(navigation image)
Home American Libraries | Canadian Libraries | Universal Library | Community Texts | Project Gutenberg | Children's Library | Biodiversity Heritage Library | Additional Collections
Search: Advanced Search
Anonymous User (login or join us)
Upload
See other formats

Full text of "Creative Computing Magazine (November 1980) Volume 06 Number 11"

cpeativo 



□Hftr 



November 1980 

vol 6, no 11 

$2.50 




the #1 magazine of computer applications and software 



Evaluations: 
•Electronic Games for 
your holiday buying 
•Computer Ambush 
•TRCopy 

Planning Your Diet 



n 




K 





TUR(N)KEY SYSTEMS 



•Bombproof Data Entry 

•Loosening Packed Basic 

•Controlled Input in Basic 

•Effective Documentation 

•Systems Analysis and Small Computers 

Actor Languages-Part 2 

Future of Small Business Computing 

Interactive Systems and Virtuality 



Columns: 
Effective Writing 

• Puzzles 

•Legal Forum 

•Atari 'Apple 

•Pet •TRS-80 

•New Products 

•Book Reviews 



^>£ 




ns subject 

c 

ation which has no u •' 



TRS-80* Model I Computer Owners . . . 




Double-density storage 
It's really here! 



Here at Percom. And your authorized Percom dealers. 

And double-density storage is here in a big way. Because now 
you can choose from three different levels of mini-disk systems — 

all double-density rated. 

And get the storage that precisely meets your application 

needs. 

Not to mention the service and quality that's made Percom the 

industry leader. 



113 



4*r- 



Although rated for double-density operation, all 
levels of Percom drives work equally well in single- 
density applications. 

You can operate these drives in ordinary single- 
density format using TRSDOS* Percom OS-80™ 
or any other single-density operating system. 

Or, you can add a Percom DOUBLER™ to your 
Tandy Expansion Interface and store data and 
programs in either single- or double-density 
format. 



Under double-density operation, you can store 
as much as 350 Kbytes of formatted data — de- 
pending on the drive model — on one side of a 
five-inch minidiskette. 

That's/our times the capacity of standard Model 
I mini-disks, almost 100 Kbytes more than the 
capacity of the eight-inch IBM 3740 format! 

Available in 1-, 2- and 3-drive configurations in 
all three model lines, Percom burned-in, fully- 
tested drives start lit only $399. 






TFD-40™ Drives 

TFD-40 Drives store 180 Kbytes (double-density) or 
102 Kbytes (single-density) of formatted data on one 
side of a 40-track minidiskette. Although economical- 
ly priced, TFD-40 drives receive the same full Percom 
quality control measures as TFD-100 and TFD-200 
drives. 



TFD-100™ Drives 

TFD-100 drives are ''flippy" drives. You store twice 
the data per minidiskette by using both sides of the 
disk. TFD-100 drives store 180 Kbytes (double- 
density) or 102 Kbytes (single-density) per side. 
Under double-density operation, you can store a 70- 
page document on one minidiskette. 



TFD-200™ Drives 

TFD-200 drives store 350 Kbytes (double-density) or 
197 Kbytes (single-density) on one side of a minidis- 
kette. By comparison, 3740-formatted eight-inch 
disks store only 256 Kbytes. Enormous on-line stor- 
age capacity in a 5" drive, plus proven Percom 
reliability. That's what you get in a TFD-200. 



the DOUBLER 



TM 




— This proprietary adapter for the TRS-80* 
Model I computer packs approximately twice 
the data on a disk track. 

Depending on the type of drive, you can 
store up to four times as much data — 350 
Kbytes — on one side of a minidiskette as you 
can store using a Tandy standard Model I com- 
puter drive. 

Easy to install, the DOUBLER merely plugs 
into the disk controller chip socket of your 
Expansion Interface. No rewiring. No trace cutting. 

And because the DOUBLER reads, writes and formats 
either single- or double-density disks, you can con- 
tinue to run all of your single -density software, then switch to 
double-density operation at any convenient time. 

Included with the PC card adapter is a TRSDOS* -compatible 
double-density disk operating system, called DBLDOS™, plus a 
CONVERT utility that converts files and programs from single- to 
double-density or double- to single -density format. 

Each DOUBLER also includes an on-card high-performance 
data separator circuit which ensures reliable disk read operation. 

The DOUBLER works with standard 35-. 40-, 77- and 80- 
track drives rated for double-density operation. 

Note. Opening the Expansion Interface to install the 
DOUBLER may void Tandy's limited 90-day warranty. 



Drive enclosures, power supplies Percom drive enclosures 
are finished in compatible silver enamel. Three sizes accommo- 
date either 1, 2 or 3 drives. Drive power supplies are heavy duty, 
cool-running open-frame design. Three-wire ac power cords are 
safer, have lower noise pickup. 

Free software patch This software patch, called PATCH PAK™, 
upgrades TRSDOS* for operation with improved 40- and 77- 
track drives. For single-density operation only. 



Quality Percom products are available at authorized dealers. Call toll free 
1-800-527-1592 for the^ajddress of your nearest dealer or to order directly from 

hacge without notice. 



PerCOm. Prices and specified 
™ trademark of Percom Data Company. I 
* trademark of Tandy Radio Shack Corpo 




PEFOCM 



nship to Percom Data Company. 
CIRCLE 177 ON READER SERVICE CARD 



PERCOM DATA COMPANY, INC. 
211 N KIRBY • GARLAND TX • 75042 

(214)272-3421 






Management Information Display 



Ultrasonic heart sector scan 



High-resolution display with alphanumeric s 



Get the professional color 

display that has 
BASIC/FORTRAN simplicity 



LOW-PRICED, TOO 

Here's a color display that has 
everything: professional-level resolution, 
enormous color range, easy software, 
NTSC conformance, and low price. 

Basically, this new Cromemco Model 
SDI* is a two-board interface that plugs 
into any Cromemco computer. 

The SDI then maps computer display 
memory content onto a convenient color 
monitor to give high-quality, high- 
resolution displays (756 H x 482 V pixels). 

When we say the SDI results in a high- 
quality professional display, we mean you 
can't get higher resolution than this 
system offers in an NTSC-conforming 
display. 

The resolution surpasses that of a color 
TV picture. 

BASIC/FORTRAN programming 

Besides its high resolution and low 
price, the new SDI lets you control with 
optional Cromemco software packages 
that use simple BASIC- and FORTRAN- 
like commands. 

Pick any of 16 colors (from a 
4096-color palette) with instructions like 
DEFCLR (c, R, G, B). Or obtain a circle of 
specified size, location, and color with 
XCIRC (x, y, r, c). 



•U.S. Pat. No. 4121283 




Model SDI High-Resolution Color 
Graphics Interface 



HIGH RESOLUTION 

The SDI's high resolution gives a 
professional-quality display that strictly 
meets NTSC requirements. You get 756 
pixels on every visible line of the NTSC 
standard display of 482 image lines. Ver- 
tical line spacing is 1 pixel. 

To achieve the high-quality display, a 
separate output signal is produced for 
each of the three component colors (red, 
green, blue). This yields a sharper image 
than is possible using an NTSC-composite 
video signal and color TV set. Full image 
quality is readily realized with our high- 
quality RGB Monitor or any conventional 
red/green/blue monitor common in TV 
work. 



BBBB^Mi BMI 


1 


L Z'2H 

r 

* • 




CCmMHN 









Model SDI plugs into Z-2H 11 -megabyte 

hard disk computer or any Cromemco 

computer 

DISPLAY MEMORY 

Along with the SDI we also offer an 
optional fast and novel two-port memory 
that gives independent high-speed access 
to the computer memory. The two-port 
memory stores one full display, permit- 
ting fast computer operation even during 
display. 

CONTACT YOUR REP NOW 

The Model SDI has been used in scien- 
tific work, engineering, business, TV, 
color graphics, and other areas. It's a 
good example of how Cromemco keeps 
computers in the field up to date, since it 
turns any Cromemco computer into an 
up-to-date color display computer. 

The SDI has still more features that 
you should be informed about. So contact 
your Cromemco representative now and 
see all that the SDI will do for you. 



a Cromemco 
incorporated 
280 BERNARDO AVE., MOUNTAIN VIEW, CA 94040 • (415) 964-7400 



Tomorrow's computers today 

CIRCLE 130 ON READbR SERVICE CAR 




Time & Money. Commodore; Atari* & 
users get more with VisiCalc " software* 




A financial VP in Massachusetts is cutting the time it takes 
to prepare month-end reports from three days to three hours. 

A California company is replacing most of its time-share 
computer service with a personal computer and VisiCalc, 
saving at least $30,000 the first year. 

Thousands of other personal computer users are also sold 
on how VisiCalc is increasing their productivity. Besides saving 
time and money, they're simplifying their work and getting 
more information that helps them make better decisions. A 
typical user reaction comes from a New York dentist: 

"VisiCalc has become an integral part of my business'/ 

VisiCalc displays an "electronic worksheet" that auto- 
matically calculates nearly any number problem in 
finance, business management, marketing, sales, engi- 
neering and other areas. The huge worksheet is like a 
blank ledger sheet or matrix. You input problems by 
typing in titles, headings and your numbers. Where 
you need calculations, type in simple formulas 
(+,— ,X,-5-) or insert built-in functions 
such as net present value and averaging. 
As quickly as you type it in, VisiCalc 
calculates and displays the results. 

"I am extremely impressed with Visi- 
Calc's capability, flexibility and orderly 
presentation of instructions" 

So writes the director of a New York cor- 
poration. He appreciates VisiCalc's powerful 
recalculation feature. Change any number in 
your model and instantly all numbers affected by 
that change are recalculated and new results are 
displayed. You can ask "What if . . T, analyzing 

Commodore is a registered trademark of Commodore 
Business Machines Inc., Atari is a registered trademark of 
Atari Inc., Apple is a registered trademark of Apple 
Computer Inc. 



more alternatives and forecasting more outcomes. It really 
increases your decision-making batting average! 

When you finish, you can print a copy of the worksheet just 
as it appears on the screen and /or save it on diskette. 

"I like VisiCalc's ease of use'/ 

That response comes from a Utah businessman using Visi- 
Calc for production forecasts, financial report ratio analysis and 
job cost estimating. Ease of use is VisiCalc's best-liked feature. 
It's designed for a non-programmer, and has an extensive, easy- 
to-understand instruction manual. 

Users also like solving a wide variety of problems with 
VisiCalc . . . and solving them their way. VisiCalc can even 
justify the cost of a personal computer, according to a New 
Hampshire financial analyst: 

"VisiCalc is paying for itself over and overf' 

VisiCalc is available for 32k Commodore PET/CBM, Atari 
800 and Apple disk systems. VisiCalc is written by Soft- 
ware Arts, Inc. 

See VisiCalc at your Personal Software dealer. 
For your dealer's name, call Personal Software Inc. 
at 408-745-7841, or write 1330 Bordeaux Drive, 
Sunnyvale, CA 94086; 

While there, see our other Pro- 
ductivity Series software: Desktop Plan 
and CCA Data Management System. 
They're like time on your hands and 
money in the bank. 




CIRCLE 170 ON READER SERVICE CARD 



f 



in This Issu 

evaluations 6 profiles 

24 Electronic Toys and Games Lubar 

For the young-at-heart on your Christmas list 

28 Man -to- Man Combat Heuer 

"Computer Ambush'' for the Apple 

144 TR copy and the Pirates Kimmel 

articles 

30 On Effective Documentation Robinson 

Documentation is not an incidental task 

35 Extremely Fast Sorting Maurer 

With a Sidelight on Computer Pseudo-Science 

43 Systems Analysis and Small Computers Feeney 

What pattern do your projects follow? 

52 Bleak Future of Small-Business Computing . . . Doering 

The threshold of confusion 

54 Stan gets Re-Randomized Katz 

56 Interactive Systems and Virtuality Nelson 

Tomorrow's crucial art form 

64 Pleas And Prayers McLaughlin & Lubar 

Subtle hints for programmers 

66 How To Solve It Piele 

Number Systems and FOR-NEXT loops 

73 Actor Languages: Part 2 Nelson 

Glossary of Terms 

Department of Notational Engineering 

Actor Language Bibliography 

What is Artificial Intelligence 

Actor- Based Animation Language 

Programming and Animating 

96 Making of a NorthStar System Ahl 

fiction fi foolishness 

1 4 Cartoon Kliban 

150 Buzzy Gerhardt 

1 92 Dictionary of Computer Technology . . Payack & Nations 
The not-so-concise pocket edition 

21 The Mars Acre-Heist Mess Frumbin Seraf ini 

NOVEMBER 1980 VOLUME 6, NUMBER 11 

Creative Computing magazine is published monthly by Creative Computing. P.O. 
Box 789-M. Morristown, NJ 07960. (Editorial office 51 Dumont Place. Morristown. 
NJ 07960 Phone: (201 ) 540-0445.) 

Domestic Subscriptions: 12 issues $15,24 issues $28,36 issues $40. Send sub- 
scription orders or change of address (P O Form 3575) to Creative Computing P.O. 
Box 789-M, Morristown, NJ 07960 Call 800-631-8112 toll-free (in New Jersey call 
201-540-0445) to order a subscription (to be charged only to a bank card) 

Controlled Circulation pending at Richmond, VA 23228 

Copyright c 1980 by Creative Computing. All rights reserved Reproduction pro- 
hibited. Printed in USA 

NOVEMBER 1980 



A 




applications - games 

98 Controlled Input In Basic Montgomery 

Make the input easy for the user 

1 02 Bombproof Data Entry Kielian 

Is your Apple hung up by a String? 

1 06 Loosening Packed Basic Jackiw 

108 Shortest Paths Shore 

Operations Research for the amateur 

116 A Faster "Life" Thomas 

An improvement for a favorite simulation 

118 Car Race Lubar & Forsen 

Anatomy of a translation 

1 20 Wood Heat and Structured Basic Brunelli 

Wood as an alternative fuel 

132 Planning Your Diet Green 

Feeding your family on 8K per day 

1 46 Base Arithmetic Suits 

Convert numbers from one base to another 

departments 

6 Et Cetera Et al 

8 Input/Output Readers 

17 Random Ramblings Ahl & Staples 

1 45 Computer Store of the Month 

1 52 Puzzles & Problems Townsend 

1 54 Effective Writing Weiss 

The Secret of the Sentence 

1 56 Software Legal Forum Novick 

Rebuttal to the CompuChess decision 

1 58 Intelligent Computer Games Levy 

Chess 

1 64 Personal Electronic Transactions Yob 

Music, Lights and women 

1 70 Outpost: Atari Blank 

DOS2, Visicalc, color and more 

1 72 Apple-Cart Carpenter 

Principals of indexing 

182 TRS-80 Strings Gray 

New computers and new games 

1 88 Book Reviews Gray 

1 94 Compleat Computer Catalogue Staples 

209 Retail Roster 

224 Index to Advertisers 

The cover is by Dan Smith of Swarthmore, Pennsylvania. Six 
articles in this issue deal with making systems easy to use (or 
almost turnkey). 

k 



r 



Publisher/Editor-in-chief 



David H. Ahl 



Editor 

Managing Editor 
Associate Editor 
Contributing Editors 




Editorial Assistant 



Secretary 



Ted Nelson 

Burchenal Green 

David Lubar 

George Blank 

Frederick Chesson 

Charles Carpenter 

Margot Critchfield 

Thomas W. Dwyer 

Stephen B. Gray 

Richard Kaapke 

Stephen Kimmel 

Harold Novick 

Peter Payack 

Alvin Toffler 

C. Barry Townsend 

Gregory Yob 

Karl Zinn 

Peter Fee 

Elizabeth Magin 



Production Manger 
Art Department 



Typesetter 



A.J. Siciliano 

Deborah Rommel 

Diana Negri 

Chris DeMilia 

Patricia Balinski 

Debbie Barbagallo 



Advertising Sales 



Renee Fox Christman 
Nancy Wood 



Marketing Coordinators 



Barbara Garris 
David Rogers 



Software Development Laura McLaughlin 

Chris Vogeli 
Bob Callan 

Systems Analyst David Gewirtz 

Data Processing Coordinator Keith Franklin 



Software Production 



Debra Linton 
Rita Gerner 



Business Manager Elizabeth Staples 

Financial Coordinator William L. Baumann 



Bookkeeper 
Retail Marketing 

Circulation 



Customer Service 
Office Assistants 



Order Processing 



Patricia Kennedy 

Jennifer Burr 
Laura Gibbons 

Suzanne Guppy 

Frances Miskovich 

Moira Fenton 

Carol Vita 

Dorothy Staples 

Patricia Brown 

Rosemary Bender 

Linda McCatharn 

Maria Petrakis 

Jim Zecchin 

Alan Kelly 

Dorian Snipes 

Joan Swihart 



Book Service Supervisors 



Book Service 



V. 



Ronald Antonaccio 
William Rogalski 

Scott McLeod 

Nick Ninni 

Mark Archambault 

Mike Gribbon 



r 



Advertising Sales 

Advertising Coordinator 

Renee Christman 
Creative Computing 
P.O. Box789-M 
Morristown, N J 07960 
(201)540-9168 

Western State, Texas 

Jules E. Thompson, Inc. 
1 290 Howard Ave. , Suite 303 
Burlingame, CA 94010 
(41 5)348-8222 

Southern California 

Jules E. Thompson, Inc. 

2560 Via Tejon 

Palos Verdes Estates, CA 90274 

(213)378-8361 

Mid-Atlantic, Northeast 
CEL Associates, Inc. 
36 Sohier Street 
Cohasset, MA 02025 
(617)383-6136 

Midwest 

Ted Rickard 
435 Locust Rd. 
Wilmette, IL 60091 
(312)251-2541 

New York Metropolitan Area 
Nelson & Miller Associates, Inc. 
55 Scenic Dr. 

Hastings-on-Hudson, NY 10706 
(91 4)478-0491 

Southeast 

Paul McGinnis Co. 
60 East 42nd St. 
New York, NY 1001 7 
(212)490-1021 



Responsibility 



J 



Creative Computing will not be respon- 
sible for the return of unsolicited manu- 
scripts, cassettes, floppy disks, program 
listings, etc. not submitted with a self- 
addressed, stamped envelope. 

OK to Reprint 

Material in Creative Computing may be 
reprinted without permission by school 
and college publications, personal 
computing club newsletters, and non- 
profit publications. Only original material 
may be reprinted; that is, you may not 
reprint a reprint. Also, each reprint must 
carry the following notice on the first 
page of the reprint in 7-point or larger 
type (you may cut out and use this notice 
if you wish): 

Copyright © 1980 by Creative Computing 
51 Dumont Place, Morristown, NJ 07960. 
Sample issue $2.50, 12-lssue subscription 
$15. 

Please send us two copies of any 
publication that carries reprinted material. 
Send to attention : David Ahl. 



Microform 

Creative Computing is available on 
permanent record microfilm. For complete 
information contact University Microfilms 
International, Dept. F.A., 300 North Zeeb 
Road, Ann Arbor, Ml 48106 or 18 Bedford 
Road, London WC1 R 4EJ, England. 



Foreign Customers 

Foreign subscribers in countries listed be- 
low may elect to subscribe with our local 
agents using local currency. Of course, sub- 
scriptions may also be entered directly to 
Creative Computing (USA) In U.S. dollars. 
(bank draft or American Express card). All 
foreign subscriptions must be prepaid. 

Many foreign agents stock Creative Com- 
puting magazines, books, and software. How- 
ever, please inquire directly to the agent be- 
fore placing an order. Again, all Creative 
Computing products may be ordered direct 
from the USA — be sure to allow for foreign 
shipping and handling. 

CANADA Surface Air 

1-year C $28 n/a 

2-year 54 

3-year 78 

Micron Distrlb. 

409 Queen St. W. 

Toronto, OT M5V 2AS, Canada 

ENGLAND £ E 

1-year 10.00 19.00 

2-year 19.50 37 25 

3-year 28.50 55.00 

CREATIVE COMPUTING 

Attn: Hazel Gordon 

27 Andrew Close 

Stoke Goiding, Nuneaton CV13 6EL 

England 

FRANCE F F 

1-year 98 183 

2-year 188 358 

3-year 273 530 

SYBEX EUROPE 
14/18 Rue Planchat 
75020 Paris, Frsnce 



SWEDEN 


kr 


kr 


1 -year 


100 


188 


2-year 


193 


368 


3-year 


280 


544 


HOBBY DATA 






Attn: Jan Nilsson 






Fack 






S-200 12 Malmo 2, Sweden 






GERMANY 


dm 


dm 


1-year 


42 


78 


2-year 


80 


152 


3-year 


116 


225 


HOFACKER-VERLAG 






Ing. W. Hofacker 






8 Munchen 75 






Postfach 437, West Germany 






HOLLAND, BELGIUM 




f 


1-year 




108 


2-year 




210 


3-year 




300 


2XF COMPUTERCOLLECTIEF 






Attn: F. deVreeze 






Amstel312A 






1017 AP AMSTERDAM, Holland 




AUSTRALIA 


$A 


$A 


1-year 


23 


47 


2-year 


44 


92 


3-year 


64 


136 


ELECTRONIC CONCEPTS PTY., LTD. 




Attn: Rudi Hoess 






Ground Floor 55 Clarence St. 






Sydney, NSW 2000, Australia 






JAPAN 


Y 


Y 


1-year 5,700 


10,700 


2-year 10,900 


21,000 


3-year 15,900 


31,000 



ASCII PUBLISHING 
Aoyama Building 5F 

5-16-1 Mlnaml Aoyama, Ml nato-Ku 
Tokyo 107, Japan 



HONG KONG 


$HK 


$HK 


1-year 


118 


222 


2-year 


227 


435 


3-year 


330 


640 


COMPUTER PUBLICATIONS, 


LTD. 




22 Wyndham St., 7th Floor 






Hong Kong 






PHILIPPINES 


P 


P 


1-year 


175 


330 


2-year 


338 


650 


3-year 


490 


955 


INTEGRATED COMPUTER SYSTEMS. INC. 


Suite 205, Limketkal Bldg., Ortigaa Ave. 




Greenhills P.O. Box 483, San Juan 




Metro Msnils 3113, Philippines 




OTHER COUNTRIES 






1-year 


$24 


$45 


2-year 


46 


88 


3-year 


67 


130 


CREATIVE COMPUTING 






P.O Box789-M 






Morristown, N.J 07980. USA 







A 



CREATIVE COMPUTING 



If North Star or Cromemco offer it . . . 

WE HAVE IT!! 

Immediate Delivery at Discount Prices 




NORTH STAR 
Horizon" 2 

32K Double Density 

Assembled and Tested 

List $3095 

ONLY $2619 



ASSEMBLED 



HORIZON 1, DD $2279 



32K, QD, List $2995 2539 



HORIZON 2, 32K, DD . $2619 

32K, QD, List $3595 3049 

48K, DD, List $3590 3039 



48K, QD, List $4090 3469 

64K, DD, List $3830 3239 

64K, QD, List $4330 3669 



NORTH STAR APPLICATIONS SOFTWARE 

(Exclusive for use with North Star Disk Systems — specify Double 
or Quad Density) 

NORTHWORD, List $399 $339 

MAILMANAGER, List $299 249 

INFOMANAGER, List $499 419 

GENERALLEDGER, List $999 799 

ACCOUNTSRECEIVABLE, List $599 499 

ACCOUNTSPAYABLE, List $599 499 

NORTH STAR HARD DISK HD-18 

18 megabytes, plugs into parallel port of North Star 
Horizon. Utilizes tried-and-proven 14" Century Data 
Marksman. List $4999. QUR pR|CE $4199 

NORTH STAR MDS-A - Double (or Quad) 
Density Disk System, Kit, List $799 . OUR PRICE $669 
Assembled and Tested, List $899 SPECIAL $719 

NORTH STAR MEMORY BOARDS 

16K Dynamic RAM (RAM-16-A/A), Assembled, List $499 $420 

Kit, List $449 SPECIAL $299 

32K (RAM-32/A), Assembled, List $739 $620 

Kit, List $669 ONLY $499 



INTRODUCTORY SPECIALS ON ... 

PREMIUM QUALITY BASF DISKS 
CERTIFIED FOR QUAD SYSTEMS 

5Va" DOUBLE DENSITY DOUBLE SIDED ust$57.50 
8" DOUBLE DENSITY DOUBLE SIDED ust$75.00 
Shipping S2.50 — Free Shipping In Multiple 01 Two Box t 



(Box of ten) 

. . S38.9S 
.. $47.49 




NEW System 3 

by CROMEMCO 

Now with Dual 

Double Sided 

Double Density 



(q|yer 2 megabytes 

of Storage) 

64K of RAM 

List $7395 



LIMITED TIME 
INTRODUCTORY SPECIAL 



$6199! 



CROMEMCO SYSTEM 2 — Now double Density 
with Double Sided Drives, Quad Capacity mini 
floppy disc drives. List $3990 Only $3390 



CROMEMCO Z-2H 




Full 11 -megabyte Hard Disk 
system. FastZ-80A 
4 MHz processor, 
two floppy disk 
drives, 64K RAM 
memory, RS232 
special interface, 
printer interface, 
and extensive 
software available. 

List $9995 

our price $8489 



NEW DOUBLE DENSITY CONTROLLER BOARD 

From Cromemco 

With built-in diagnostics — 16 FDC Controller 

List $595 OUR PRICE $505 

Z-2 COMPUTER SYSTEM List $995 $845 

SINGLE CARD COMPUTER - SCC-W 4 MHz. List $450 $382 

NEW COLOR GRAPHICS INTERFACE — SOI List $595 OUR PRICE $505 
CROMEMCO HDD — 1 1/22-megabyte Hard Disk for use with existing 
systems. DMA controller. Transfer rate of 5.6 megabytes/second. 

HDO-11. List $6995 OUR PRICE ONLY $5939 

HDD-22. List $1 1 ,995 $10,189 



SHIPPING AND INSURANCE: Add $15 or Horizons, $2.50 for Boards and Software. Hard Disk Systems and Cromemco systems shipped freight collect. 
Advertised prices are for prepaid orders. Credit card and C.O.D. 2% higher. Deposit may be required on C.O.D. All prices subject to change and offers 

subject to withdrawal without notice. - — N 

WRITE FOR FREE CATALOG ^^J^ 



master charge 



MiniMicroMart, Inc. 



'»! MM ■■«•>• 



161 8 James Street, Syracuse, NY 13203 (315)422-4467 

CIRCLE 157 ON READER SERVICE CARD 



TWX 710-541-0431 





Northeast Computer Show 

The Northeast Computer Show will be held 
at Hynes Auditorium/ Prudential Center, 
Boston, MA, November 20-23, 1980. Show 
hours are: Thursday-Saturday, 1 1 a.m. -9 p.m., 
Sunday, 1 1 a.m. -6 p.m. Adult admission $5. An 
end-user public exposition featuring small and 
medium-sized business systems, scientific, 
engineering computers and small computers. 
Produced by National Computer Shows, 824 
Boylston Street, Chestnut Hill, MA 02167. 
Tel: (617) 739-2000. 




ICP Announces 
3rd Annual Scholarship 

To further the belief that a strong future 
begins today in the schools, Larry A. Welke, 
president of International Computer Programs, 
Inc. (ICP), has announced the third annual ICP 
Scholarship competition. The award will be 
made to a computer science or computer 
technology student for the 1981-82 collegiate 
school year. The scholarship will consist of 
one year's tuition plus education expenses up to 
a maximum of $5,000 paid to the U.S. college or 
university of the winner's choice. 

The ICP Scholarship Committee is com- 
posed of highly qualified men and women from 
throughout the computer industry. They will 
base their selection on: the student's accumu- 
lative grade point average in his or her field of 
study; overall grade point average; need for 
financial aid; participation in data processing- 
related activities; school activities and leader- 
ship roles; and overall accomplishments and 
awards. An original essay will be the final test. 

Applications will be available through the 
financial aid departments of most U.S. colleges 
and universities. The deadline for filing 
scholarship applications is November 15, 1980. 
For further information, contact Sheila Cun- 
ningham at ICP. 

Mail applications to: Sheila Cunningham, 
Editor, International Computer Programs, Inc., 
9000 Keystone Crossing, Indianapolis, IN 46240 
(800)428-6179. 







Software Education Seminar 

A two-day seminar, called "Designing 
Software Education" will be held in Boston, 
November 13-14 at the Sheraton Boston Hotel 
and in Washington, November 20-21 at the 
Sheraton Inn-Washington Northwest. The 
seminar will start promptly at 8:30 each morning 
and last until approximately 4:30 each after- 
noon. Developed for managers and training 
personnel charged with user and internal 
education, the seminar will focus on system 
documentation, classroom education, and 
cassette workbooks, plus video production 
(VTR) and computer-assisted instruction 
(CAI). 

Describing low-cost, step-by-step proce- 
dures for developing education programs that 





can be utilized early in the development process, 
the seminar will be taught by Mr. Shirley 
Mix on, author of AMACON's Handbook of 
Data Processing Administration, Operations 
and Procedures, and numerous articles on 
software education. 

According to Mr. Mixon, "Software 
education is one of our industry's biggest 
problems. That's because few computer 
professionals know how to write well, develope 
training materials or instruct." 

Registration is $495 per person. For more 
information contact Shirley Mixon Seminars, 
4549-E Northside Parkway, Atlanta, GA 30339. 
Phone 404-955-3183. 



V 






Call For Papers 

The Mid-South Association for Educa- 
tional Data Systems will hold their 8th Annual 
Conference February 26-28, 1981 at Richardson 
Towers, Memphis State University, Memphis, 
TN. Papers, workshops and demonstrations are 
being solicited in all categories of educational 
use of computers. Suggested topics are: 
Computer Aided Instruction (CAI), Computer 
Managed Instruction (CMI), Student Informa- 
tion Management Systems, teaching method- 
ology, curriculum designs, user-producer 
communication, administrative applications 
and research developments. 

Short round-table discussions on a variety 
of topics are also being planned for presenta- 
tion. Please contact the Program Chairperson 
listed below if you wish to suggest a topic or 
serve as a round-table panel member. 

Submit two double-spaced camera ready 
copies of an abstract or paper or two sets of 
documentation on workshops, demonstrations, 
or round-table presentations. All materials must 
be received by December 1, 1980, in order to be 
included in the conference proceedings. 

Send contributions and program sugges- 
tions to: Lloyd D. Brooks, AEDS Program 
Chairperson, Office Administration, Memphis 
State University, Memphis, TN 38152. (901) 
454-2453. 




California Computer Swap Meet 

The Fall, 1980 California Computer Swap 
Meet will be held on Saturday, November 8th, in 
Gateway Hall at Santa Clara County Fair- 
grounds (344 Tully Road, San Jose, CA) from 
10 a.m. to 6 p.m. This semi-annual "happening" 
within the personal/ micro computer industry is 
sponsored by John Craig, Publisher of 
Info World. 

This is where manufacturers, stores, and 
individuals come to unload their back rooms 
and garages with both top of the line and used 
merchandise. Whether you're looking for a 
diskette or a disk drive, an IC or a complete 
microcomputer system, application programs 
or games, books or magazines, or whatever . . . 
you'll find it there. 

A special Consignment Table will be avail- 
able for those who wish to drop off an item or 
two to be sold during the day. A free Literature 
Table is available to anyone within the industry. 
Admission to buyers will be through the 
purchase of a $5 Purchase Certificate, redeem- 
able in full at any seller's booth, or by John 
Craig, for $3.50, if unused. Sellers, both 
individuals and companies, should call (415) 
966-6546 (a friendly answering service) for 
booth prices, availability and reservations. Or, 
write to: California Computer Swap Meets, 
PO Box 52, Palo Alto, CA 94302. Having a 
good time at this event is not optional . . . it's 
mandatory. 



6 



CREATIVE COMPUTING 



ATARI: PERSONAL 
COMPUTER SYSTEMS THAT 

GROW WITH YOU 



\ 





Start with a better computer. 

Atari computers have built-in capa- 
bilities you can't even add onto 
many other personal computers. 
Three programming formats (ROM 
cartridge, disk and cassette). A 57 key 
upper/lower case ASCII keyboard with 
29 keystroke graphics symbols. 128 
colors and hues. Four separate sound 
channels and a built-in speaker. Four 
controller ports. A built-in RF 

©1980, Atari, Inc. 

A Warner Communications Company 




modulator and FCC approval for 
connection to any TV. Plus, nationwide 
Atari Authorized Service Centers. 
And more. 

Add memory. The ATARI 

800™ is supplied with 
16K of memory. You can 
P 5 ^ expand up to a full 48K of 
RAM with 8K or 16K Memory 
Modules™ you install yourself. 
In less than a minute. The 
ATARI 40o's™ 8K of RAM may be 
expanded to 16K at Authorized Ser- 
vice Centers. Both may be expanded 
to 26K of ROM with slip-in ROM 
cartridge programs. 

Add peripherals. The ATARI 410™ 
audio-digital program recorder. Sin- 
gle or dual density* disk drives. The 
ATARI 800 individually addresses up 
to four drives. Add the ATARI 850™ 
RS232 Interface Module. Add high 
speed 40 or 80-column printers. Add 
an acoustic modem for remote data 
access. Add a light pen* And there 
are more Atari peripherals 
on the way. 



ATARI 



Add programs. Choose among doz- 
ens of programs in Atari's rapidly 
expanding software library. Programs 
categories include: 

• Personal Finance 
& Record Keeping 

• Personal Interest & Development 

• Professional Applications 

• Education 

• Information & Communication 

• Entertainment 

• Programming Languages 

• Small Business Accounting 

Add It up. With Atari, you start 
with more. And you can build to 
more. Because Atari offers you per- 
sonal computer systems that grow 
with you. Ask your Atari retailer 
to give you a full demonstration 
of Atari computers, peripherals 

and programs. Complete systems. 

Because when other people were 
thinking hardware and software, 
Atari was thinking systems. 



Atari reserves the right to make changes to products 
or programs without notice. 



♦Available Fall, 1980 
PERSONAL COMPUTERS 

1265 Borrcgas Avenue, Sunnyvale, CA 94086 



Call toll-free (800) 5388547 (Except Alaska and Hawaii) 
(In California: (800) 672-1404) for the name of your nearest Atari retailer. 



n 





\uuu\ 



www 



O ATARI 



V 






«»»»«A* 









Another Slice of Pi 

Dear Editor: 

In both TRS-80 Level II Basic and Applesoft, the inverse 

trigonometric intrinsic functions are limited to the arctangent. 

Both programming manuals offer "derived" functions for the 

arcsine and arccosine, using the arctangent function, as follows: 
ARCSIN(X) = ATN(X/SQR(-X*X+1)) 
ARCCOS(X) = -ATN(X/SQR(-X*X+1))+ 1.5708 
There are two problems which can arise when these 

formulae are used: 

1 . If X =±1 , a divide by zero error will occur, when in fact 

X = ± 1 are legitimate values. 

2. The principal value of ARCCOS(X) lies between and 
7T ; the formula above (which is in fact based upon the 
ARCCOTANGENT) will give values from -71/ 2 to 

7C/2. 

The following formulae are suggested which allow all valid 
values of X (-1 < X < 1), and also return the principal values in 
the correct range: 

(NOTE: PI= 3.141592654) 

ARCCOS(X) = ATN(SQR(1-X*X)/(X+(1-SGN(X)* 

SGN(X)))) + PI/4*((1-SGN(X))* 
(l-SGN(X))) 

ARCSIN(X) = PI/2-ARCCOS(X) (as shown above) 

Each of these, written as single statements, can be used in a 
DEF FN statement, if desired. 

The extensive use of the signum (SGN) function shows 
how powerful this function is for selectively including or 
eliminating terms from a formula. 

Try it! 

Michael P. Guerard 

Associate Professor 

Industrial Education and Technology 

Glassboro State College 

Glassboro, NJ 08028 



Dungeons and Dragons 

Dear Editor: 

Bravo! Your Dungeons and Dragons article in your July 
edition was absolutely superb! I have been subscribing for 
about a half year and that issue is the pick of the crop. 

I would also like to say that Glen Brannock's program 



made excellent use of the limited memory, but he didn't even 
mention some of the sub-classes of the ones listed. For all you 
computer-minded D and D buffs, by adding some extra 
"lineage," class number 1.1 could be a paladin, a type of holy 
fighter, 1.2 would be a ranger, a nature fighter, 2. 1 could be an 
illusionist, a type of magic-user who deals with physical 
illusions, 3.1 could be a druid, a type of cleric who deals with 
nature, and finally 4.1 & 5 could be an assassin and a monk 
whose names tell their own professions. Also, a character race, 
the half-elf was omitted along with the gnome. All of these 
might be inserted by deleting some of the REM statements, 
although I couldn't do it with only 4 It of RAM to work with on 
a Level II TRS-80. 

Although these are minor details and Glen's program was 
superbly written, these character classes should have some 
mention. 

In conclusion, I would like to say that I am 1 3 years old and 
have been playing D and D for quite a while and would like to 
contact other people regarding D and D and/ or utility 
programs for the game. 

Gary Katz 

3 Noe\ Lane 

East Brunswick, NJ 08816 

P.S. My highest level character is a half-elf druid, thus causing 
me to write this letter! 



Consumer Protection 

Dear Editor: 

I have been watching with some interest the controversy in 
some of your editorials, open letters, and the legal column, with 
respect to protection of software. I certainly agree that software 
authors deserve some protection for their work, else they would 
not bother to continue writing. (Unless they really had to do it. 
The names of the graphic artists and musicians who have been 
little compensated for their work but have continued to produce 
are legion.) 

However, I have seen little from you or your magazine with 
respect to protection of software consumers. It is often difficult 
to get a demonstration of a particular piece of software prior to 
purchase. And if the product is other than a game (a word 
processing or income tax program, for example) several days 
are probably necessary to be able to evaluate the product to 
determine its ultimate utility in the desired application. 



8 



CREATIVE COMPUTING 



The "Smart" Video Terminal 



a * * 



i ■ 



ONLY 

$675.00 




VIDEO TERMINAL. PROFESSIONAL 

KEYBOARD AND SUPER-SHARP DISPLAY — 

ALL AT AN AFFORDABLE PRICE* 



H**VY-<J"J t Y 



)-<»u4l ltv k«rbo«r<J< standard 
typewriter format. 



12-k*Y numeric pad in calculator format for faster 
easier entry of math pr osrams. 



Ei?ht user-defir.ed 



you can 



to meet 1 our 



n e e d s . 



Z--S0 microprocessor for a multitude of 
h 19 h- speed function*. 

• Extremely wide bar.dwidth ai.d hi9h-rejolut ton CRT for 
sharp. easi-on-the-eYes video display. 

Field-protect feature maintains > our field while chan»in» 
data within the video field. 

■ Lift-off top *ives you ^uick access to insid< 




Heathkit H19 




J 



From the All-In-One Computer People: 



You'll have to look a long way to find a better video ter- 
minal value. The H-19 Professional Video Terminal uses 
a standard typewriter-format keyboard, so you can 
start programming right away. 

The 12-key numeric pad, in calculator format, makes 
entering of math data faster, easier. Eight user-function 
keys, 33 graphics keys give you extra flexibility. And 32 
separate terminal functions can be controlled from 
keyboard or computer. 

The 12" high-resolution CRT displays up to 25 80-char- 
acter lines, features bright, clear readouts and reverse 
video capability. 



Use the H-19 with any computer. All you need is an EIA 
Standard RS-232C Serial Interface — and you're ready 
to begin programming your computer system with this 
professional video terminal. 

Get our FREE catalog — and find out why you should 
have the H-19 "Smart" Video Terminal. 



Heath 8 

Computer Systems 

Dept. 355-714, 

Benton Harbor, MI 49022 



We won't leave you out in the cold 



VISIT YOUR 
SERVICE CENTER 

The "Smart" Video Terminal, 
along with the complete line of 
Heathkit computer products, 
is on display at the 62 Heathkit 
Electronic Centers** throughout 
the U.S. and Canada. See your 
white pages for the nearest 
location. 



*In kit form, mail order, FOB. Benton Harbor, MI 
Also available fully assembled and tested for 
only $995.00, FOB. Benton Harbor. 

**In the U.S., Heathkit Electronic Centers are units 
of Veritechnology Electronics Corporation. 

Prices and specifications subject to change 
without notice. 

CIRCLE 146 ON READER SERVICE CARD 





Send for 

FREE CATALOG 

describing the complete line 
of Heath computers, peripherals 
and software. Or pick up a 
copy at the nearest Heathkit 
Electronic Center.** 



When It Comes 



To Add-on Memory 



LOBO 

Has It All 



LOBO DRIVES manufactures a full line of S-100 

computer compatible disk drives. All drives are 

software compatible with most S-1 00 disk operating 

systems and applications software programs. Only 

LOBO DRIVES offers you the variety and choice of 

floppy and fixed disk drives. Choose from 5Vi and 

8-inch floppies, 5V* and 8-inch Winchester technology 

fixed disk drives, and several Floppy/Fixed disk 

combinations. Each LOBO DRIVES system is 

thoroughly tested and burned-in and has the famous 

LOBO DRIVES One Year, 100% Parts/Labor 

Warranty. 




MODEL 400 5V4-INCH FLOPPY 
DISK MEMORY SYSTEM 

A high-speed (298) Msec Access), high- 
reliability (8000 hrs MTBF), low-cost floppy 
disk memory system. It is available in both 
soft and hard sector formats, and a choice 
of single or double density configurations. 

• Up to 220 KBytes Capacity 

• Single/Double Density 

• Soft Sector Format 

• Complete Software Compatibility 



MODEL 800/850 DUAL FLOPPY 
DISK DRIVE MEMORY SYSTEM 

LOBO DRIVES offers you a choice of 
single-sided, single or double density 
(Model 800) or double-sided, single or 
double density (Model 850) dual 8-inch 
memory subsystems. Each system comes 
complete with chassis and power supply, 
cables, controller and interface. 

• Compatible with Most S-1 00 DOS 
Systems 

• Up to 3.2 MByte Capacity 



MODEL 1850 DUAL 
FLOPPY/FIXED DISK MEMORY 

SYSTEM 

No more worries about back-up. LOBO 
DRIVES has combined the latest state-of- 
the-art Winchester technology with the pro- 
ven reliability and dependability of its Model 
850 8-inch floppy disk drive to bring you the 
ultimate in memory expansion for your 
S-100 computer. The Model 1850 is the 
ideal memory system for small business 
and word processing applications. 

5 or 10 MByte Fixed Disk Capacity 

1 .6 MByte Floppy Disk Capacity 

Software Compatibility 

Sealed Environment 

Winchester Reliability 

70 Msec Average Access Time 



MODEL 950 DUAL 
FLOPPY/FIXED DISK MEMORY 

SYSTEM 

All the advantages of Winchester 
technology fixed disk memory: large 
capacity (6.38 MBytes), high speed (170 
Msec avg. access time), and extended 
reliability, combined with the convenience 
of a built-in floppy disk back-up in one 
cabinet. Only LOBO can bring you the 
storage capacity of 16 mini-floppies at a 
fraction of the price. 

• The Storage Capacity of 1 6 Mini- 
Floppies 

• Built-in Back-up 

• 1 70 Msec Access (Avg) 

• Software Compatibility 



See your nearest dealer, call, or write for the complete LOBO DRIVES story, 
find out just how competitively priced a quality drive can be. 




INTERNATIONAL 



CIRCLE 204 ON READER SERVICE CARD 



935 Camino Del Sur 
Goleta, California 93017 
(805) 685-4546 
Telex: 658 482 



f I/O, cont'd. . . 



For example, this letter is being written using a well-known 
word processing program, which 1 must say does a reasonably 
good job for turning out a letter. The documentation (which I 
was not able to study until I got the package home) is decent, 
but the system has a number of quirks which must be worked 
around. I could continue on for several more pages, but the 
most interesting thing about the manual is the long attempt to 
disclaim warranties (which I did not see at all until I got the 
system home, and which certainly was not pointed out to me by 
the store which sold it.) 

The manufacturer is not bashful about charging for the 
program. I can see why they do not want to be liable for 
consequential damages if the program reveals a hidden glitch 
only after thousands of dollars of input has been entered using 
it. (But what of the idiot who uses a $50 income tax program 
and gets socked with interest and penalties because of it?) 

I believe that a consumer has a right to expect that the 
publisher and the retailer will stand behind the product, at least 
to the extent of returning the purchase price if the software does 
not perform to specifications. 

The consumer should treat software publishers fairly. But 
fair treatment is a two-way street. 

Barry D. Bayer 

2842 Walnut Road 
Homewood, IL 60430 

P.S. One of the problems that I have noticed with my new word 
processing program is that I tend to get a bit wordy. Now is 
there someone who can do up a program to edit material that 
has been composed and formatted on the word processor . . . 



FLOPPY DISK FACTORY DIRECT FLOPPY DISK FACTO 



Say "Cheese" 



v 



Dear Editor: 

After typing in the Mouse simulation program by Jerry W. 
Lee in your July, 1980 issue, I was surprised to find my mouse 
went EEEK!, UGH, etc. but would not move after any length of 
prodding or waiting. After listing the program from the 
PDP-1 1 I used, I found that there were no errors at all in my 
program and all cursor commands worked. After playing 
computer, I came to the conclusion that the mouse could not 
advance past line 700 unless it sat, which brought it right back to 
where it started. But, after adding the following changes, I have 
enjoyed playing it, a friend getting the mouse to the goal in 26 
seconds with prodding and 33 with none at all. 

New line: 

595 Q9%~al 

i RESET ILLEGAL BEHAVIOR FUG 
The major change: 
700 H2#«H#+H1# 
/ V2£«V£+Vl£ 

/ N2«FNR2# IF H2%> *Wh% OR V2%>^% OR !2%<tf> 
/ Q9%=1$> IF H2£2>«WU£nOR V2%>-G% OR V2%<& 

/ GOTO 590 IF Q9%=1% 

Here, I set the flag Q9% to one if there is an illegal 
behavior, and conditionally branch back to 590 if the flag 
Q9%=1%, instead of going to 590 whether there is an illegal 
behavior or not. As you also can see, I reset Q9% in line 595 to 
avoid nasty errors. 

As I said before, with these changes, MOUSE is a fun and 
interesting learning experience in conditioning. 

Charles Congdon 
Route 49 Swamp Road 
Pittsfield, MA 



0C 

O 

I— 
CJ 
< 

Q 

> 

Q_ 
CL 
O 



CJ 
LU 

GC 

D 

>- 
DC 

O 

h- 
CJ 

< 

Q 

>- 
CL 
Q. 
O 




J3 

< 

D 
D 



• Buy factory direct from the manufacturer of floppy disks 
sold exclusively under other well-known brand names. 

• Save distribution costs on reversible 5.25" floppy disks, 
which are 1 00°/o certified for 40 track, dual side, double 
density and all other standard applications. 



CJ 

LU 

Q 

> 
CC 

o 

I— 

CJ 

< 



• 50°/o savings on 5.25" floppy disks with new factory- 
direct 2.2 megabyte capacity "D is kit" 

• Factory- direct "Diskit", includes twelve floppy disks 
and accessories, plus a head cleaner disk and solution 
packaged in a bookcase binder for easy access, handling 
and storage. "Diskit" complete for the introductory 
price of only $49.50 plus $2.50 freight and handling. 
Normal price $59.50. Order now and save $10.00 
(CA residents add 6 1 /2°/o sales tax). 

• Available in hard and soft sector configurations; when 
ordering indicate number of sectors — 1 , 1 or 1 6. 

• Send check or money order to: 

Factory Direct 

P.O. Box 60759 
Sunnyvale. CA 94088 

For VISA or MasterCard call toll-free 
C800) 824-7888 

In Calif. (800) 852-7777 
In Alaska & Hawaii (800) 824-7919 

Ask for Operator 88 

CIRCLE 248 ON READER SERVICE CARD 

)HSia AddOld 133dlQ AdOlGVd >ISIQ AddOld 13 



n 



O 

"O 
"D 

-< 

g 
en 

-n 
> 

n 

o 

u 

-< 

a 

ID 

m 

n 



o 
-a 

g 

-n 
> 

n 

-I 

o 

XI 

-< 
g 



COMPUTER 

EQUIPMENT 

& SOFTWARE 

BARGAINS 



I TM» HmtxjnmxH M**#rp*cv tor Computer f ou«pm#of 



§r=r 



_L%v_-3 ?5->^» z.c~-~ 



IrJ 



Cet Your 
rjrst Issue FREE 9 



NTRS-Ws at Super Discount Prices) 



Mtrw nrrx 



EVERY MONTH 



BUY, SELL OR TRADE ALL TYPES OF COMPUTER 
EQUIPMENT AND SOFTWARE (pre-owned and 
new) among 20,000 readers nationwide. 

FEATURES: 

• Low classified ad rates - 10$ a word 

• Hundreds of ads from individuals 

• Categorized ads so you can find them instantly 

• Large (11 by 14") easy to read pages 

Subscribe now for $10 and receive 13 issues/year 
(one FREE plus 12 regular issues). After receiving 
your first issue if you're not completely satisfied 
you may have a 100% refund and you still keep the 
first issue free. Bank cards accepted. 
BONyS: // you have something to advertise (pre- 
owned or software) send in a classified ad with your 
subscription and well run it FREE. 

Jfr The Nationwide Marketplace for Computer Equipment 

m camvuTBR si-iawsR 

^ P.O. BOX F7 • TITUSVILLE, FL 32780 • 305-269-3211 
MasterCharge or VISA orders only, call TOLL FREE 800-327-9920. 

CIRCLE 128 ON READER SERVICE CARD 



NOVEMBER 1980 



11 



f 



I/O, cont'd. . . 
Pavlov's Mouse? 

Dear Editor: 

I found an error in an introduction that you wrote for an 
article in Creative Computing, so now I have an excuse to write 
to you. I enjoy reading your magazine, and want to commend 
you for your interest in education. 

The error is this: You said, in your introduction to 
"Building a Mouse" by Jerry W. Lee (July 1980), that 
"punishment, or negative reinforcement" does not work as well 
as reward (reinforcement) in changing an organism's behavior. 
You are quite right about the superiority of reinforcement, but 
the terms punishment and negative reinforcement are not 
synonymous. 

Negative reinforcement is the removal of an aversive 
stimulus. Thus, a negative reinforcer serves to increase the 
probability of the response that it follows. For example, if a 
tight shoe hurts your foot, you are reinforced when you take it 
off. Negative reinforcement is the principal technique of the 
torturer: "Tell me what I want and I'll stop hurting you." In 
contrast, punishment is the administration of an aversive 
stimulus after a particular behavior. It serves to make that 
behavior occur less often. If you stick your finger into a parrot's 
cage and get it bitten, you will probably not put it there again. 

Neil R. Carlson, Ph.D. 

64 Harkness Road 

Pelham, MA 01002 



Vanity 



Dear Editor: 

I was happily typing in the music sight-reading program 
from Creative Computing June 1980, when I astounded to see 
the following line: 

5465 V=V+194-PEEK( 17315 )-PEEK( 17316 )-PEEK( 17317 )-PEEK( 17318 ) 

In case you haven't looked at a TRS-80 memory map, these 
locations are right in the middle of Level 2 program text 
storage. This produces two problems: 

1 . The program must be typed exactly as it is written, or it 
will bomb. 

2. The program will not run under Disk Basic. 

Upon examination, I determined that these peeks referred 
to the characters "2000" used in a timing loop (line #45) that 
kept the opening title on the screen! 

Normally, I find it easy to forgive (and change) a 
programmer's "cute" coding, but not in this case. When a 
published program contains a trap that occurs after almost 200 
lines, it is a terrible diservice to the subscribers. This is doubly 
irritating when the trap seems to be there only for vanity's sake. 

If anyone cares, the fix is to simply remove (or convert to a 
REM) line #5465. The program then behaves fine under Disk 
Basic, as well as Level 2. 

Louis Shapiro 

415 West 24 Street 

New York, NY 10011 



Thanks. We appreciate the, uh . . . punishment? 



— Ed. 



Poli Sci I 

Dear Editor: 

Sorry to advise, but in the last issue of Creative 
Computing, the program "Basic Politics in America" has two 
serious bugs. 

Old line data 

3400 DATA 84,65,88,80,65,89,69,82 

New line 

3400 DATA 70,65,76,76,32,71,85,89 

Old line data 

6100 DATA 76,79,87,69,82,32,84,65,88,69,83 

New line 

6100 DATA 82,65,73,83,69,32,84,65,88,69,83 

Hoping this "fix" will make the actions in Washington 
more clear to your other readers, and then your article and 
program will more accurately reflect our government's posture 
to those of us in the computer industry. 

Paul Raymer 

Paul's Electric Computer 

POB 42831 

Las Vegas, NV 89104 



Effective Writing 



Dear Editor: 

Why do you have articles on effective writing in a computer 
magazine? I think they're great — love 'em — keep 'em comin — 
but I'm just curious. 

Andrew L. Burt 

7249 S. Vine St. 

Littleton, CO 80122 



Adventure 

Dear Editor: 

Because of the recent popularity of Adventure games, I am 
interested in implementing one on the system that I use, an IBM 
370. However, I am unable to use the published software I have 
seen since it is designed for home systems. Further, IBM Basic 
lacks the string handling functions supplied in home systems. 
Can you or any of your readers direct me to a version of 
Adventure written in standard Basic, Fortran, or IBM 
Call-OS PL/I? Thank you. 

Timothy Marino 

128 Partree Road 

Cherry Hill, NJ 08003 

There are versions of Adventure on some IBM timesharing 
systems, but tracking one down might be tough. Perhaps some 
of our readers can help you out. — DL 



K 



Our answer is " Why not?" 



— Ed. 



Errors Ill-Behaved 

Dear Editor: 

In my article, "A Consistently Well-Behaved Method of 
Interpolation," in the July issue of Creative Computing, 
attention should be called to some minor errors. In the last 
column on page 55, in the paragraph starting "The rationale," 
V: should be yj, and Vj+j should be yj+i (3 places). In the second 
paragraph of Conclusions, page 56, the first sentence should 
end with a right-hand parenthesis. In the 8th line of the last 
column on page 56, y- should be yj. 

Russell W. Stineman 

Boeing Aerospace Company 

P.O. Box 3999 

Seattle, WA 98124 



12 



CREATIVE COMPUTING 



NEW PRODUCT 




THE 

DATA 

FACTORY 



YOU CAN'T WORK HARDER, 
SO WORK SMARTER 

This program is important to 
you. We at Micro Lab have 
tested them all. 'THE DATA 
FACTORY" by William 
Passauer, is the most powerful 
data base system yet 
developed. It will provide instant 
accessibility to your records 
and files which you can then, 
rearrange in new combinations 
to give you information in 
seconds to make quick and ac- 
curate decisions. 

OUR GUARANTEE 

THIS PROGRAM WILL WORK. 
Micro Lab chooses to represent 
a very select group of profes- 
sional programmers that meet 
our high standards for quality. 
Countless hours have been 
spent in our labs to insure these 
claims to you, and we back them 
with a contract to your dealer. 
Your program can also be up- 
dated if any new changes to im- 
prove this program are made. 

MOST ADVANCED SYSTEM 

The latest breakthroughs in a 
data base system have been in- 
corporated into Bill Passauer's 
program. The unique new 
feature that sets it apart from all 
others is its complete 
modifiability. You may rear- 
range your data, removing part 
of it from the original disk, and 
form a new data base without 
reentering the data again. Add, 
delete, replace, or rearrange and 
compare fields or data at any 
time. Do an incredible 20 level 
search. 

The program has no limitation to 
the amount of fields you can 
have within the limits of your 
computer. Your field lengths 
can have a maximum of 239 
characters for each field and 
you can enter ANY CHARACTER 
as data (commas, quotation 
marks, etc.). 



EASILY LEARNED 

Any one can use it. The program 
prompts you as it runs. The easy 
to follow manual leads you 
through the set up of your data 
base and all the features. 'The 
Data Factory" is organized in 
nine program modules. Only the 
module being used is loaded in- 
to memory to manipulate data, 
rather than the entire program. 
This saves memory for 
manipulating data rather than 
for program storage. There are 
so many other "common sense" 
features that set it apart from all 
others. 

A UNIVERSAL SYSTEM 

You may use 'THE DATA FAC- 
TORY" at home or at work. Set 
up: Inventories, Mailing Lists (a 
printer is needed for mailing 
labels); Sales records; Accounts 
payable or receivable; Budgets; 
Library, recipe, or phone direc- 
tories; Appointment calendar; 
Notices of subscriptions, 
license or warranty dates; Work- 
ing or shopping lists, and many 
other applications that you will 
discover. All of the above can be 
accomplished from this one 
disk oriented program. No need 
to have separate costly pro- 
grams for each purpose. With all 
the data on a disk, you can 
manipulate the information 
more easily and efficiently. Find 
any record using the record 
number, the data entered or any 
variation of the data in your data 
base. The from/to feature 
selects records by dates or 
amounts. 



REQUIREMENTS 

"The Data Factory" is presently 
being offered in APPLESOFT 
but will be available in other 
forms of basic shortly. Check 
with your dealer for other soft- 
ware varieties currently being 
handled. You will need 48k and 
Applesoft in ROM. "The Data 
Factory" is as powerful with one 
disk drive as with two. You do 
not lose any of its capabilities 
using only one disk drive. A 
printer is optional. 



INSURANCE POLICY 

Micro Lab is instituting a revolu- 
tionary new policy for the public: 
Micro Lab Disk Insurance. 



You can feel secure. Two iden- 
tical diskettes of the "The Data 
Factory" program will be includ- 
ed with the original purchaser's 
package. If you make a mistake 
and accidentally blow a disk, 
there is no time or money lost. 

AVAILABLE NOW 

"The Data Factory" is being of- 
fered nationally for the first 
time. It has been marketed and 
tested on a local level and has 
been received with a most en- 
thusiastic response from both 
dealers and users. 

"The Data Factory" should be at 
your local Apple dealer now at 
an introductory price of $100.00. 
Stop in to see our demo disk. 



y-micpc lab 7 




systems 
that work 

811 STONEGATE • HIGHLAND PARK, IL 60035 • 312-433-7877 

CIRCLE 156 ON READER SERVICE CARD 




From "Tiny Footprints." Copyright B. Kliban 1978. Workman Publishing Co., New York. Reprinted by arrangement with the publisher. 



A CREATION OF COMPUTER HEADWARE 



(Wow! How'd All That 
Stuff get In There?) 



self-indexing filing 
system— flexible, 
infinitely useful and easy 
to use, that adapts to 
your needs. 



Immediate Response: Even in 
the largest files, WHATSIT 
responds in seconds, thanks 
to pointer linkages and hash 
coding. 

Conversational Dialogue: 

Query and update requests 
may be intermixed in any 
order, without returning to a 
"menu selector." 



NEW 

Apple II Plus 
WHATSIT at special 
introductory price: 

$95 

(Regular price, $150 
after December 31, 1980). 

WHATSIT comes ready to run on 
your Apple, Apple II Plus, Alpa Micro 
North Star, or CP/M computer. See 
your dealer for a full 
demonstration. . .or write or call: 

IIXUIHIH 

<§»ojtwanz 

P.O. Box 14815 • San Francisco, CA 94114 • Tel: (415) 621-2106 



WHATSIVs unique capabilities: 

Multiple Entries allowed per 
field: For example, a 
bibliographic file can 
associate each work with any 
number of authors. WHATSIT 
allocates file space as 
needed for each. 

New Data Fields added "on 
the fly": You're not confined 
to a particular "record 
layout" that must be declared 
in advance. Your file evolves 
to fit your needs. 



The 

Software 

Works;" Idg 

Mountain View, CA &08) 736-9438 



CIRCLE 197 ON READER SERVICE CARD 



14 



...and 



it 
does I 



CREATIVE COMPUTING 



micro lab presents 




NEW FOR THE APPLE 



BY BILL BASHAM 



A NEW CHALLENGE 

DOGFIGHT will capture your imagina- 
tion. You are the pilot of a jet going into 
combat. You may fly alone on this mis- 
sion, or you may have another pilot 
flying with you to defeat the enemy. 
First you fly against one enemy jet. You 
are in complete control: fly faster or 
slower, turn left or right — but most 
importantly, FIRE. If you are shot down, 
and you act quickly, you can bail out. 
You and your parachute float gently 
downward, hoping an enemy plane 
does not shoot you. If you survive, you 
will quickly return to the fierce dog- 
fight. The enemy can also bail out!! You 
must shoot him down before he has a 
chance to return. 

THE ENEMY RETURNS 

Each time you defeat all enemy jets or 
helicopters, you advance to the next 



level where you fly against faster 
and/or more enemy planes. There are 
sixteen levels of difficulty to fight 
through. Bill Basham, the talented au- 
thor of this high resolution program, 
has made it through only 8 levels be- 
fore his planes were destroyed. 



MANY WAYS TO PLAY 

DOGFIGHT may be played in several 
different ways. You, alone, may chal- 
lenge the computer, or, two players 
may fly against the computer — either 
on the same team or on different teams. 
With DOGFIGHT you can create your 
own custom game with as many as 
eight players crowding around your 
Apple keyboard controlling their own 
planes. You may select jets or helicop- 
ters on any level — be a daredevil with 7 
computer jets against you. You are in 
charge with the custom mode. 



FOR THE ACES 

Micro Lab will award a special 
achievement plaque to the first 10 
pilots who reach 1 0,000 points in any of 
the auto modes (one player, two 
players same team, two players diffe- 
rent teams). A special, individual, sec- 
retly coded message will appear when 
reaching that score. Report that code 
to Micro Lab to claim the Ace title. 

AVAILABLE NOW 

The Dogfight is available on disk at 
your Apple Dealer for $29.95. 

/-fflicpc lah 7 




systems 
that work 

811 STONEGATE • HIGHLAND PARK, IL 60035 

312-433-7877 
CIRCLE 221 ON READER SERVICE CARD 



After you play the 
Temple of Apshal, 
you can play 
Sticks and Stones 
for free. 

Within the 200 rooms and catacombs of the 
Temple of Apshal unfold treasures await you - 
the hero. All you have to do is elude, outsmart and 



outwit the beasts, monsters and demons lurking 
in the dark labyrinth. Spend minutes or hours on this 
role-playing fantasy - the boldest computer game 
in our Dunjonquest™ series. 

Now, when you order the "Temple of Apshai," you 
get the "Sticks & Stones" board game for no extra 
charge. In fact, if you're not satisfied with the "Temple 
of Apshai/ you can return it within 10 days and still 
keep "Sticks* Stones!" 

But don't wait, this special offer is limited. (We'll 
also send you a catalog outlining 
our other exciting com- 
puter games). 




Automated Simulations, Department CC 
P.O. Box 4247, Mountain View, CA 94040 



Name 




Please send me the 'Temple of Apshai" for: 






Cassette ($24.95) 


Disk ($29.95) 


TRS-80 


□ 16K, Level II 


□ 32K TRSDOS 


APPLE 


Not available 


□ 48K Applesoft in ROM 


PET 


□ 32K 


Not available 



Address. 



City, State, Zip 



□ Check enclosed. 
Amount $ 



Charge to: □ VISA □ MasterCard 
# Expiration date. 



(Add $1.00 shipping and handling charge; plus 6% or 6 1 /2% tax for California 
residents.) CIRCLE 110ON READER SERVICE CARD 



Or charge by phone: (800) 824-7888, operator 861. In California: (800) 852-7777, 
operator 861 . If you prefer, call these numbers for a list of the computer stores near you. 



NOVEMBER 1980 



15 



The TRS-80 




el III. A New 



Standard in Personal 

Computers! 




The new standard is now here 
— this beautiful, feature- 
packed, one-piece desktop 
computer system at a very, 
very affordable price. Continu- 
ing the TRS-80 tradition 
begun with our famous Model I, 
the amazing Model III gives you 
everything you've always wanted 
in a personal computer — including 
easy expandability 

It Talks Your Language! Model III is 
available with either Level I or 
powerful new Model III BASIC. 
Best news of all is that nearly all 
Model I software is compatible 
with Model III, so you already have 
a huge library of applications to 
choose from. Radio Shack already 
offers over 80 quality packages — 
from games to sophisticated 
business programs to word 
processing. 

Big Storage Capacity! Model III 
BASIC features dual-speed cas- 
sette loading (1500 and 500 baud). 
You can expand your Model III to 



Radio Shack is 



Lowering the Cost of 
High Technology! 



As 

Low 

As 



699 



Feature Packed! Evef^ Model 
III includes a parallel printer 
interface and 65-key 
keyboard. Model III BASIC 
adds "extras" like a real 
time clock, scroll protect, 
keyboard controlled screen 
print, and RS-232 firmware. 



support up to four (two integral) 
double-density disks at 175K each 
for a total system capacity of up to 
670K bytes. 

Powerful Memory! Up to 48K of 
internal memory is easily added, 
since no expansion interface is re- 
quired. Model III is completely 
self-contained. Start with a 4K 
Level I system or move up to our 
16K Model III BASIC right away for 
the applications you need. 

High-Resolution Display! Every 
Model III has a sharp display of 16 
lines of 64 characters. Model III 
BASIC adds lower case plus 
graphics and special characters. 



And It's Very Affordable! The 4K 

Level I system is only $699* The 
16K version with powerful Model 
III BASIC is just $999* So why 
wait, step up to the new standard 
now. Available at Radio Shack 
stores, dealers and Computer Cen- 
ters everywhere. 

Radio /haelc 

The biggest name in little computers® 
J Send me your TRS-80 Catalog! J 

Radio Shack, Dept. 81-A-40 
1300 One Tandy Center 
Fort Worth, Texas 76102 



Name 



Street 



City 



State 



*Retai! nrir«»s mavvarv at inrih/irfnal <stnr«><; anrl rtealpts Sn^cial orHpr mav h* rpntiirerl initially 



I Zip Phone 

riori e oao r\Ki oc a nco ccowirc r«on 



creative 
computing 

Editorial Features 
1980 

November: 

Human engineered, interactive systems. 
Problem analysis and programming tech- 
niques. Reviews of electronic toys and 
games— Part 1. 



December: 

Buying guide to personal computers and 
consumer electronics products. Electronic 
toys and games— Part 2. 

1981 



January: 

Graphics and animation. Digital 
techniques. Interactive video disk. 



music 



February: 

Artificial intelligence. Interactions in the 
Al community. 

March: 

Networks, large and small. Data transmis- 
sion and communications for personal and 
larger computers. 

April: 

Educational applications. Winter CES 
coverage. 

May: 

Investment analysis and financial decision 
making for individuals and business firms. 

June: 

Computer graphics, art and movie-making 
techniquies. 

July: 

Word processing, text editing, printers. 

August: 

Simulations and models. Simulating both 
continuous and discontinuous processes. 
Data Bases. NCC coverage. 

September: 

Educational applications. Summer CES 
coverage. 

October: 

Getting started with a personal computer. 
Techniques for advanced users too. 



November: 

Problem solving, programming 
niques. Electronic toys and games. 



tech- 



December: 

Buying guide to personal computers and 
consumer electronic products. 



#1 in Software 
and Applications 



Advertise in 
Creative Computing? 

Should you advertise in Creative Com- 
puting? Yes, if you want to reach over 
80,000 well-educated savvy readers who 
are interested in using computers as ef- 
fectively as possible. 

According to one advertiser who tracks 
not only responses to ads, but dollar sales 
as well, Creative Computing produces 
nearly twice as much sales per dollar of 
advertising than any other magazine in the 
field. 

Advertising is not cheap. The one-time 
black and white page rate is $1700. How- 
ever, this is quite economical when you 
consider that it translates to about 2 cents 
to reach each paid subscriber or one-half 
cent to reach each pass along reader. 
We'd be surprised if you didn't get many 
times the cost of the ad back in increased 
sales. 

In fact one advertiser apologized to me 
that he would have to withdraw his adver- 
tising for an issue or two because "our ad 
in Creative Computing produces so many 
orders that we just can't handle them until 
we hire another person." The story has a 
happy ending; he hired two more people 
and is now running a full page every 
month. 

For a complete media kit and rate card, 
write to the Advertising Dept., Creative 
Computing or to your advertising repre- 
sentative listed on page 4. Or all us at 
(201)540-9168. 

Write for 
Creative Computing? 

Should you write for Creative Comput- 
ing? Yes, if you have a new, useful com- 
puter application or programming techni- 
que you'd like to share with others. No, if 
you've written yet another version of 
blackjack. Yes, if you can relate a personal 
experience that has a message about 
using computers in a sensible or interest- 
ing way. No, if you want to relate how a 
computer screwed up your credit card ac- 
count. Yes, if you can describe a com- 
puter, peripheral or software package in 
an objective, in-depth evaluation. No, if 
you want to reinforce your decision to buy 
a new product by telling the world how 
wonderful it is. 

We have a comprehensive 6-page 
Author's Guide which tells our philosophy, 
provides writing guidelines and gives 
concrete examples of what we do and do 
not want. If you'd like a copy send a self 
addressed stamped #10 envelope (with 2 
stamps) and we'll send you one. Send to 
Editorial Dept., Creative Computing, P.O. 
Box 789-M, Morristown, Nj 07960. 

Subscribe to 
Creative Computing? 

If you're not a subscriber, it's an especi- 
ally good idea to subscribe now. We have 
not raised our subscription rate in 6 years 
since the magazine was founded (in fact 
we lowered it when we increased our fre- 
quency from bi-monthly to monthly). Inevi- 
tably, because of the rising cost of paper, 
printing, and postage we will have to raise 
the rate soon. 




fcrrplings 

With David Ahl^ 



giThe British 
Scene 





While chips of the fish and chips var- 
iety seem to be the only ones successfully 
manufactored by the Brits, they seem to 
have done an amazingly nice job in tak- 
ing our American chips and making them 
into computer systems. 

Whilst on the subject of chips, I should 
mention that one mate stopped by our 
stand (booth) at the PCW show with a 
"floppy chip." This chip was about a foot 
long with 16 arms, stuffed with foam and 
covered with artificial fur and about the 
cutest rival you've ever seen for the at- 
tention of my family of animal puppets. 
(Yes, if you didn't know it I am a col- 
lector—of most everything, but most 
particularly of unique hand puppets, 
comic books (Wonder Woman, Iron Man 
ROM, Machine Man, Micronauts and 
others), T-shirts (which I wear, virtually 
exclusively), stamps, beer signs, and 
other stuff.) 

By the bye (yes, it is "bye" and not 
by"), thinking about that last paragraph, 
it is an abomination. The Wall Street 
Journal recently had a piece about reada- 
bility. They commented that the average 
letter and business report is virtualy un- 
intelligible with a readability level of 
Grade 13 or higher. That sounds low 
(freshman college), but most people feel 
comfortable at a much lower level. I 
won't go through the discussion, but suf- 
fice to say that the average American 
prefers reading at the Grade 8 level. The 
average level of the WSJ is Grade 11, 




A colorful aray of floppy belts in Petti 
coat Lane. 



whereas a sampling of my writing is 1 1.7. 
Maybe a higher grade level seems intell- 
ectually appealing but this should not be 
held in esteem. The goal of this magazine 
is clarity to as many people as possible. 
What we strive for is interest, clarity and 
economy of words. 

(Someday, when we have a bit of space 
to spare I will clarify our (my) philosophy 
and relate it to others like Freddie Laker, 
J.S. Bach, Ken Olsen and Big Bird et al. 
Stay tuned. 

And now, on to the British scene. 



Tuscan S100 

Tuscan: perhaps an unfortunate name 
for a computer. The TV comic bird and 
NJ milk company with similar names 
seem to give it an air of unreality. But it's 
quite real. 




The Tuscan S-100 is a S-100 computer 
with excellent expansion capability. 

The Tuscan SI 00 is a unique cross be- 
tween a single board computer and an S- 
100 unit. Effectively it is an S-100 mother 
board with Z-80 CPU, video, I/O and 8K 
RAM and EPROM built in with five S- 
100 slots for expansion. The case can 
house one or two 5-1/4" floppy disk dri- 
ves and, of course, five S-100 cards. 



Transam offers the Tuscan with a wide 
array of software including a resident 2K 
monitor or 8K Basic. A resident Pascal, 
disk Basic and CP/M are also available. 

Prices for a Tuscan system are about 
the same as a similarly configured 
PET -about $1200 for starters in the 
U.K. — but seemingly the Tuscan offers 
much greater expansion capability. 

Sinclair ZX80 

Somehow, you hear the dimensions of 
this unit and say, "gee, that sounds 
small," but you don't really think about it. 
Well, do so- the unit is 6.85" x 8.58" x 
1.5" and weighs 10.5 oz. That's small. 
Really small and light. It is slightly wider 
and an inch or two shorter than the stand- 
ard tape cassette recorder you've got 
hooked to it. And it's considerably light- 
er. 

Features: it's based on the Z-80 chip. 
Touch sensitive keyboard. Keyword in- 
puts to Basic (like New, Load, Input, 
Print, List, Poke, Clear, Next, etc.). Gra- 
phics resolution of 48 x 64 pixels with 10 
symbols plus space and inverse. Memory: 
IK RAM built in, up to 16K add on pro- 
mised (when?) 

Coming up in the near future we'll 
have an in-depth review of the ZX80 and 
excerpts of a conversation with foun- 
der/president/designer Clive Sinclair. It 
looks like a winner to us but it's up to you 
to let us know what you think. U.S. price 
is only $200. 




Clive Sinclair talked to us about his new 
ZX80 computer. 



NOVEMBER 1980 



17 



Sharp MZ-80K 

Why this was not introduced at the 
summer CES we don't know, but it 
wasn't. In any event, it's neat. Z-80 based. 
Memory up to 48K. 50 x 80 pixel resolu- 
tion (good but not outstanding graphics 
resolution). Fast cassette baud rate (1200 
bps), and upper/lower case keyboard. 
Built-in real-time clock and 3-octave 
audio. Altogether a very well engineered 
and compact unit. Peripherals immedia- 
tely available include floppy disk drives 
(128K each) and dot matrix printer (96 
cps). It looks as though Sharp is serious. 
Very much so. System price with 48K, 
approx. $1000. 




The Sharp MZ-80 

is a well-designed, compact unit. 



Acorn Atom 

Some controversy surrounds the intro- 
duction of this machine. Certain people 
think it was introduced just a mite too 
soon after (or before actually) the Sin- 
clair ZX80 (by a group of former Sinclair 
employees). In my humble opinion this 
seems unfounded since the Atom is quite 
different from the ZX80. 

The Atom is based on the 6502 chip 
and has a full-stroke QWERTY standard 
sized keyboard. It measures 15" x 9 A /2 % x 
2-1/2". A 2K RAM and 8K ROM are 
included. The software includes an ex- 
tended Basic with several powerful exten- 
sions such as variable length strings (up 
to 256 characters), the WAIT command, 
DO-UNTIL constructions, PLOT com- 
mands, DRAW and MOVE and several 
other extensions over standard Basic. 

The Atom also has a nifty plug-in card 
with the 6809 MPU for those who want 
this unit instead of the 6502. 

The basic Atom in kit-form costs about 
$300 or $400 assembled. More memory, 
peripherals and software are, of course, 
extra. 



V 



The Video Genie is a TRS-80 act-alike at 
a significant price reduction. %%s %» s 




Video Genie 



This is the TRS-80 act-alike that Per- 
sonal Computer Corp, nee Microsette, 
showed at NCC in June 1980. Well, this, 
somehow, seems more real. Perhaps be- 
cause we saw over 20 of them running. 
The only differences between the Video 
Genie and TRS-80 is that it (VG) does 
not have up and down arrow keys or a 
volume control on the cassette unit. 



However, it is all in one unit, except TV 
set/CRT/VDU. 

In a derogatory way, we sometimes 
speak of those products as Chinese cop- 
ies or Hong Kong copies. In this case, 
either is correct. The Video Genie is 
made by a Chinese company in Hong 
Kong and is an excellent functional copy. 

Oh yes, one major difference is price. 
Video Genie costs about $700 for a Level 
II equivalent. P.S. Radio Shack dealers 
won't touch it. But can you blame them? 




TI 



% 



\\v.\'-"\ 'VY-AVY Y'AA' 



ACORN ATOM 



ffiififfiiiiiiiiiiiiitiHiiitiiiiiiiiiiHiiti!iiiiiiiimiiuium\nHiuu\ 




The Acorn Atom is a 6502-based com- 
puter with extended Basic and excellent 
graphics. 




Even Atoms must be split occasionally 



The PCW Show and World Computer 
Chess Championship 

The 3rd Personal Computer World 
Show held in London from September 4 
to 6 was well-attended all three days. Ex- 
hibitors were pleased with the quality of 
the attendance balanced between busi- 
nessman and hobbyists. Many American 
companies were represented through 
agents, however Creative Computing was 
the only company with U.S. personnel. 
We were so pleased with the results that 
we've reserved a double stand (booth) in 
next year's show. For information about 
the 1981 show, write Personal Computer 
World, 14 Rathbone Place, London W1P 
IDE, England. 



18 



CREATIVE COMPUTING 



An Extraordinary Offer to introduce you to the benefits of Membership in 

ELECTRONICS BOOK CLUB 

invites you to take 

this 1,442-page 

^^JJomputer Library 

— ^""— for only 





A complete guide to modern microprocessor/microcompute 
troubleshooting and servicing that shows you how to do it all . . . 
how to understand and troubleshoot digital/logic and micro- 
processor circuits, how to dig into their operating systems, and 
how to locate and repair problems quickly and easily. You'll learn 
about binary codes, system interfacing, input/output devices, 
flowcharts, using oscilloscopes, logic probes, etc., when troub- 
leshooting, testing, and repairing TTL logic gates, clock pulses, 
random-access memories, CPU's, VCR's, videodisc players, 
complete minicomputer systems like the TRS-80, TV games, TV 
tuners. 308 pps.. 229 illus. List $12.95 



Handbook Of Microprocessor Applications 



How to use microprocessors in a wide variety of applications . . . 
including interfacing and using machine language program- 
ming! Clearly explains and examines the concepts crucial to the 
use of microprocessors and fully details every phase of logic and 
machine decisions: Boolean algebra, the truth table, OR, NOR, 
AND and NAND functions, etc. Learn to document and analyze a 
problem, locate any given step, calculate forward jumps, use 
timing loops, calculate delays and more. State machines, 
input/output functions, data buses, ROM and RAM. This book is 
practical ... and focuses on the how-to of using microprocessor 
chips. 308 pps.. 94 illus. List $14.95 



The BASIC Cookbook 



A complete dictionary of all BASIC statements, commands, and 
functions— with programming examples and flowcharts— 
thoroughly defines the BASIC vocabulary, illustrates the defini- 
tions with sample programs, and clarifies the programs with 
matching flowcharts. You'll learn how to use each BASIC term in 
a workable program. ARRAY, COS, END. FOR-TO, GOSUB, INPUT, 
LIST, RANDOMIZE, REM, SCRATCH. SGN, SQR, TAN. It also defines 
programming terms that apply to APL, ALGOL, COBOL, FORTRAN, 
RPG, PL1, and other languages. 140 pps., 49 illus. List $7.95 



PASCAL 



A programmer's guide to using Pascal, Tiny Pascal and Super- 
soft Tiny Pascal . . . including actual programs and helpful 
exercises! Starting with how to load a Tiny Pascal cassette into a 
TRS-80 system, goes through all the steps necessary to become 
proficient in this new language. Learn to read syntax diagrams; 
use WRITE statements to print characters and do TRS-80 
graphics; enter integers with READ statements; use logic with 
AND, OR and NOT. etc. You'll also find out how to put together 
complete READ and WRITE programs, and use repetitive (loop- 
ing) statements to write unending loops . . . plus how to 
"goof-proof" entries. 350 pps., 106 illus. List $15.95 



1 00 1 Things To Do With Your Personal Computer 



Over 1,000 time-saving, money-saving, effort-saving and just- 
plain-fun applications— with actual programs, printouts, flow- 
charts, diagrams and illustrations. Twelve Chapters contain 
programs for any use and taste, and applications for everyone: 
business and financial mathematical, technical and scientific, 
educational, statistical, control and peripheral, hobbies and 
games. Includes a shorthand translator, weather forecasting, 
precise values for camera settings, animated films, model 
railroads, controlling household devices like wood stoves, Morse 
code, almost 100 games . 336 pps., 100 illus. List $12.95 



Let us send you this 5-volume, 1,442 page 
Computer Library as part of an unusual offer 
of a Trial Membership in Electronics Book Club. 
Here are quality hardbound volumes, each 
especially designed to help you increase your 
know-how, earning power, and enjoyment of elec- 
tronics and computers. Whatever your interest 
in electronics/computers, you'll find Electronics 
Book Club offers practical, quality books that you 
can put to immediate use and benefit. 

This extraordinary offer is intended to prove 
to you, through your own experience, that these 
very real advantages can be yours . . . that it is 
possible to keep up with the literature published 
in your areas of interest, and to save substantially 
while so doing. As part of your Trial Membership, 
you need purchase as few as four books during 






Only $2.95 for 
ALL FIVE! 

Regular List 
Price $64.75 

Top-Quality 
Hardbinding 

Contains the 
very latest 
info on 
computers! 

Over 500 
illustrations 

Contains over 
275,000 words 

1442 data- 
packed pages 



the coming 12 months. You would probably buy at 
least this many anyway, without the substantial 
savings offered through Club Membership. 

To start your Membership on these attrac- 
tive terms, simply fill out and mail the coupon to- 
dav. You will receive the 5-volume Computer 
Library for 10-day inspection. YOU NEED SEND 
NO MONEY. If you're not delighted, return the 
books within 10 days and your Trial Membership 
will be cancelled without cost or obligation. 

ELECTRONICS BOOK CLUB. Blue Ridge Summit, Pa. 17214 



Facts About Club Membership 



• The 5 introductory books carry a publishers retail price of 
$64.75. They are yours for only $2.95 for all 5 (plus postage/ 
handling) with your Trial Membership 

• You will receive the Club News, describing the current Selec 
tion. Alternates, and other books every 4 weeks (13* a year) 

• If you want the Selection, do nothing, it will be sent to you 
automatically If you do not wish to receive the Selection, or if you 
want to order one of the many Alternates offered you simply give 
instructions on the reply form (and in the envelope) provided 
and return it to us by the date specified This date allows you at 
least 10 days in which to return the form If because of late mail 
delivery you do not have 10 days to make a decision and so 
receive an unwanted Selection you may return it at Club ex- 
pense 

• To complete your Trial Membership you need buy only four 
additional monthly Selections or Alternates during the next 12 
months You may cancel your Membe r ship any time after you 
purchase these four books 

• All books — including the Introductory Offer — are fully return- 
able after 10 days if you re not completely satisfied 

% All books are offered at low Member prices plus a small 
postage and handling charge 

• Continuing Bonus: If you continue after this Trial Membership, 
you will earn a Dividend Certificate for every book you purchase. 
Three Certificates plus payment of the nominal sum of $1 99 will 
entitle you to a valuable Book Dividend of your choice which you 
may choose from a list provided Members 



ELECTRONICS BOOK CLUB 

Blue Ridge Summit, Pa. 17214 

Please open my Trial Membership in ELEC- 
TRONICS BOOK CLUB and send my 5-volume 
Computer Library, invoicing me for only $2.95 
plus shipping. If not delighted, I may return the 
books within 10 days and owe nothing, and 
have my Trial Membership cancelled. I agree 
to purchase at least four additonal books dur- 
ing the next 12 months after which I may 
cancel my membership at any time. 



Name 



Phone 



Address. 



City 



State 

(Valid for new Members only Foreign and Canada add 15'; CRC-1180 



Zip 



NOVEMBER 1980 



19 



CIRCLE 196 ON READER SERVICE CARD 



r 









One of the exciting events of the show 
was the World Microcomputer Chess 
Championship. Held adjacent to the 
hotel bar, the tournament had an air of 
conviviality not normally associated with 
chess tournaments. David Levy, the tour- 
nament master, promised us a complete 
I review of the tournament in his column. 
Not to steal his thunder here, but you 
ought to know that Chess Challenger was 
the winner. 

However, if David Levy has his way, 
there will be a new chess champion (ma- 
chine variety) on the scene next year. On 
September 10 his company announced a 
chess machine— supposedly the best yet. 
For more information watch these pages 
or, if you can't wait, write Intelligent 
Software, Ltd., 104 Hamilton Terrace, 
London NW8 9UP, England. 




V 



Is there any doubt that this fellow is one 
step ahead of us all? 

Graphics and Animation 

Following a delightful Italian dinner in 
a small restaurant just off Russell Square, 
we adjourned to John Lansdown's flat for 
a viewing of some of his latest computer 
animations. 





Contemplating one's stand on Picadilly by 
Green Park. 

These animations were done for Spa- 
nish National Television and dealt with 
energy conservation (a concern not just 
in the U.S.). Unless one knew that these 
animations were done by computer, the 
difference between the computer and 
conventional drawings is practically un- 
detectable. 

Indeed, Alan Sutcliffe and John told us 
that when they did the landing sequence 
in Alien the director objected that it was 
"too realistic" and didn't look as though it 
were done by a computer. In the final 
version, the computer animation was de- 
graded by displaying it on a lower re- 
solution terminal and then further de- 
graded in the filming so that the audience 
would believe it was done by computer. 






No, this was not one of the stands at the 
PCW show, although were sure they 
would have done quite well if they were 
there. 



The irony of the situation is that in the 
future computer animation will be even 
better than it is today. By catering to the 
current beliefs of audiences, the film ac- 
tually portrayed a less realistic view of 
the future than could have been shown. 

Alan Sutcliffe, by the way, is the foun- 
der of the Computer Arts Society and 
John Lansdown is secretary. Both have 
promised us material for future issues to 
which we greatly look forward. 

Membership in the Computer Arts So- 
ciety costs $5 per year for which you get 
a few issues of PAGE, the society's bul- 
letin. For U.S. membership, send $5 to 
Kurt Lauckner, Math Dept., Eastern Mi- 
chigan University, Ypsilanti, MI 48197. 






Tandy (Radio Shack) had ten systems at 
their stand at the PCW show. 




Everyone has a chance to sound off at 
Speaker's Comer, Hyde Park. 



20 



CREATIVE COMPUTING 




Best massage 
your data ever had. 



Data Wrangler is a comprehen- 
sive file handling program for the 
Apple II* computer. Its unique de- 
sign puts a whole new level of infor- 
mation management skills at your 
fingertips, whether you're a novice 
user or an experienced professional. 

Information enters the system 
from any input device recognized by 
your hardware configuration— key- 
board, disk, cassette, remote com- 
puter via telecommunications, you 
name it. 

Once in, the data occupies a 
workspace as large as all of free 
memory in your system. It is in this 
workspace, at machine-language 
speed, that your information can 
be listed, edited, transformed, re- 
placed, manipulated, searched, 
sorted, formatted, or otherwise 
changed to your precise require- 
ments. 

Most major functions are accom- 
plished with a single key. At any 
time, all the information in a file can 
be printed to an external printer, 
saved to the disk storage device, 
sent to another computer via tele- 
communications. 

You are in total control at every 
step. The program is command 
driven, rather than menu driven, 
giving you much more speed and 
flexibility in real time operation once 
you master the terms. A hefty 
documentation package takes you 
step by step, clearly and simply, 
through the entire resources and 
capabilities of the package. 

What's more, the program— while 
copyrighted— is completely copy- 
able. It is anticipated that an active 
and imaginative user group will 

NOVEMBER 1980 




Data Wrangler 

THE INFORMATION MACHINE 



emerge, in which the members will 
share new applications and program 
notes with each other, for increased 
satisfaction and value. 

What you can do, for instance . . . 

1 . Activate your system with the 
ANSW command before you 
leave home. Call it up from a 
remote location and operate it 
as if you were there. 

2. Call a remote time-sharing sys- 
tem such as the Dow Jones 
News and Quote Service. Get 
the information you want and 
save it to disk. Edit, sort, 
search, and get the particular 
nuggets you want, off line. 

3. Choose a character of your 
choice as a file separator. Have 
it indicate a carriage return, a 
tab move, a column formatting 
device. Use it as a sort key. 

4. Make new files that other pro- 
grams can use, in binary or text. 

5. Create a file to include both visi- 
ble and suppressed data. Have 
the printer print part of it, keep 
the rest of it in storage but not 
printed out. 



6. Use Data Wrangler as a text 
editor, with full search and re- 
place features. 

7. Write a program in any language 
and save it as a binary or text 
file. Upload it to a timesharing 
service and debug it on remote. 
Download the corrected pro- 
gram and save it for use later. 

8. Read in a binary or text file from 
disk, perform editing functions, 
save it back to disk, revise as 
you like. 

9. Save graphics or any other 
image from the hires screen as 
a binary file. Use the graphics 
table for input. Make a se- 
quence of images part of a CAI 
program, as a slide show. 

1 0. Simulate program operation for 
demos by putting up menus, 
followed by hires charts or 
graphs. 

1 1 . You name it. 

TO ORDER u Data Wrangled THE 
INFORMATION MACHINE, send 
your check or money order in the 
amount of $75 to The Computer 
Room, 1 06 E. Oak St., Chicago, IL 
60611.** 



Trademark of Apple Computer, Inc. 

"You are free to make as many copies as you like for your own 
use. Seller, however, cannot accept return of the program disk 
or manual for refund, for any reason whatsoever. 



THE 
COMPUTER 



BOOM 




21 



CIRCLE 149 ON READER SERVICE CARD 




"N 



Betsy Staples 



An Experience 

Most English 



The first official British excur- 
sion by Creative Computing staff 
members had a totally uncomputer- 
ized beginning. The employee at the 
Air India ticket counter at Kennedy 
airport had what he insisted was an 
indeterminate number of standby 
seats for sale. How he knew whether 
he had any at all was a mystery since 
the only concessions to modern 
technology in evidence on his desk 
were a telephone and pocket calcu- 
lator. Writing tickets by hand was a 
painfully slow process — it took 
nearly two hours to process the 12 
people ahead of us. 

"Who's next?" he said while 
writing the ticket of the man in line 
ahead of us. "I have one more ticket." 
Pretending not to hear, we gave him 
two passports and he wrote two 
tickets. At times like that one does not 
ask questions. 

Upon arrival in London after a 
late, but otherwise uneventful flight, 
we were immediately appalled by the 
high price of just about everything. 
The bed and breakfast hotel near 
Earl's Court where we stayed was a 
far cry from the bargain lodging we 
had come to expect on previous trips. 
After a short nap to keep jet lag at 
bay, we set about the task of locating 
the cartons of books and magazines 
we had shipped to England for the 
Personal Computer World Show. Due 
to human error only 36 of the 65 
cartons we sent by sea in early July 
had arrived, and the remainder had 
been sent by air at the last minute. No 
one in H.M. Customs had noticed that 
there were only 36 cartons, and 
clearance had been granted for all 65. 
The boxes that came by sea were 
cleared by humans at Felixstowe, and 
the ones that arrived by air were 
subjected to computer scrutiny in 
London. Naturally, the two processes 
were incompatible, but after many 
phone calls and much gnashing of 
teeth the books were delivered to the 
Cunard Hotel where the show was to 
be held. 

The same H.M. customs organi- 
zation on the same day opened 
another box and found the 50 wind-up 
robots we planned to offer as 
premiums to people who entered 
subscriptions at the show. They 
insisted that the box contained 
"electronic games," and it took us 
some time to convince them other- 
wise. 



After we were sure that all was in 
order for the show, we set out to do 
some sightseeing. We visited the 
British Museum of Science and 
Technology where we saw some very 
impressive machinery — giant steam 
engines and the like — and an exhibit 
devoted to the history of computing. 
They even had a display that allowed 
us to see bubble memory in action. 




The next day our peregrinations 
took us to The Game Centre where 
Graham Levin maintains an in- 
credible stock of games — everything 
from dice to computers. We're sure 
certain Dungeons and Dragons fans 
of our acquaintance would have gone 
bananas over the selection of books 
and markers for that game alone. 

Back at the Cunard for set-up we 
found very friendly, helpful show 
staff and union workers. The British 
union people apparently have enough 
work that they don't feel compelled to 
spend their time thwarting the move- 
in and set-up activities of exhibitors. 
They were, however, insistent upon 
their tea: at precisely 4:00 p.m. one of 
them arrived with a tray of cups (not 
paper) and a pot of tea. They all left 
what they were doing and sat on the 
floor drinking and chatting. 

When the show opened, our agent 
in the U.K., Hazel Gordon, was there 
to help at the stand. The first thing 
she told us was that we were not to 
accept personal cheques unless the 
customer could produce a "banker's 
card." We soon learned that British 
banks issue to deserving depositors a 
plastic card which not only identifies 
the bearer but guarantees his or her 
check up to £50 — a splended system 
that U.S. banks would do well to 
imitate. 

The show was a great success. We 
found the British computer buffs 
charming and eager to learn what 



was going on across the Atlantic. 

Sunday, the day after the show, 
we spent in totally un-computer- 
related activity roaming the streets of 
London. Petticoat Lane, a giant flea 
market offering everything from 
clothing to toys to jellied eels; a craft 
display in Greek Park and a walk 
through Hyde Park, including 
Speakers' Corner, were all on our 
itinerary. The weather was quite 
warm and sunny, and Londoners 
thronged the parks to take advantage 

of it. 

Tuesday morning was devoted to 
retrieving and sending several car- 
tons of leftovers from the show to 
Hazel in Nuneaton, a very small town 
in the Midlands. The personnel in the 
British Rail terminal provided the 
same efficient, good natured service 
we had come to expect by that time, 
and soon our books and catalogues 
were on their way, along with a hot 
air balloon (deflated) and a small 
boy's trunk for boarding school. 

Tuesday afternoon we elected a 
visit to the London Zoo, "thought by 
many," according to our guidebook, 
"to be one of the finest in the world." 
We found the admission price (£2.50 
— about $6) a bit steep, but the zoo 
itself was delightful. The animals are 
housed in a curious mixture of 
antiquated "houses" and cages and 
up-to-date areas where a moat is the 
main deterrent to the mingling of 
guests and residents. 

One of our favorite exhibits in the 
zoo was the Insect House. Many 
varieties of unusual insects (some of 
them venomous) are kept in terrar- 
ium-like environments with glass 
fronts which allow visitors to get a 
good look at them and their activities. 
Have you ever watched a black widow 
spider wrap up next week's dinner? 

And, of course, we saw the giant 
pandas, who were a bit lethargic — 
perhaps because of the heat. The 
charm of the zoo is heightened by the 
well-kept gardens located throughout 
and the canal which runs through it. 
After the zoo, we took the under- 
ground to Victoria Station where, 
after standing in a queue for about 15 
minutes, we purchased tickets for 
Freddie Laker's Skytrain back to 
New York. A computerized system, 
pleasant personnel and a DC-10 that 
stayed aloft brought to a conclusion 
our most delightful English Experi- 
ence. □ 



22 



CREATIVE COMPUTING 




HAVE WE 
GOI A PROGRAM 

FOR YOU! 



The new computers are showing off. 
Over $50 million worth of equipment in over 100,000 
square feet of space, including the latest software and hard- 
ware for business, government, home and personal use. Every- 
thing the NCC show has and more will be on display, and you can 
buy it all right on the spot. 

Computers costing $150 to $250,000, mini and microcom- 
puters, data- and word-processing equipment, telecommunica- 
tions, office machines, peripheral equipment and services from 
leading names in the industry like IBM, Xerox, Radio Shack 
and Apple will all be there. 

There'll be conferences on business uses of small to 
medium sized computers, and how to make purchasing 
^^ evaluations. 

^^ There'll be robots, computerized video games, 

\^ computer art and computer music. 

^^ 1 Everyone from kids to people who earn their liv- 

ing with computers will have a great time at the larg- 
est computer show ever organized in each region. 
Admission for adults is $5. The public is 
invited, and no pre-registration is necessary. 
ysjs: Don't miss the computer show that 

ypt% S als r-r— r- mixes business with pleasure. Show 
,_rT — ~ = up for the show. 




WASHINGTON, D.C. 

D.C. ARMORY/STARPLEX 

THURSDAY-SUNDAY 

SEPTEMBER 18-21 

11 A.M. TO 9 P.M. THURS.-SAT. 
11 A.M. TO 5 P.M. SUN. 



CHICAGO 

Mccormick place 
thursday-sunday 

OCTOBER 16-19 

11 A.M. TO 9 P.M. THURS.-SAT. 
11 A.M. TO 5 P.M. SUN. 



Produced by National Computer Shows, 

824 Boylston Street, Chestnut Hill, MA 02167. 

Telephone (617) 739-2000. 



Please send me: 



BOSTON 

HYNES AUDITORIUM 

PRUDENTIAL CENTER 

THURSDAY-SUNDAY 

NOVEMBER 20-23 

11 A.M. TO 9 P.M. THURS.-SAT. 
11 A.M. TO 5 P.M. SUN. 



□ adult tickets at $5 each. I have enclosed the proper amount of $ 

D Information on the show's conference program. 



D Hotel registration information 
Please print: Name 



□ Exhibitor rental information 



Address 
City 



State 



Zip 



NOVEMBER 1980 



23 



/* 



David Lubar 



electronic toys 
and games 



Once, there was Pong. Then home 
arcades flooded the market. Soon, con- 
sumers had a large selection of electronic 
toys and games from which to choose. This 
year is even better. The products intro- 
duced at the Toy Fair and Consumer 
Electronics Show run the gamut from new, 
exciting toys to rehashes of last year's big 
sellers. This month and next, we'll take a 
look at some of these toys. A few non- 
electronic products will be included on the 
basis of their being innovative, clever, or 
just plain fun. 

Tri-1 from Fonas 

All-Star Baseball, Batting Champs, 
and Star Chase form the trilogy populating 
this hand-held game. First, a compliment 
on the buttons. They are sturdy and press 
with a nice click. The games are done with 
moving dots of light. Baseball has all the 
expected features, with two players 
alternating turns at bat. There is also a 
button that allows the player to attempt to 
steal. The game can handle extra innings if 
there is a tie at the end of regulation play. 
One player can, of course, play both sides. 
The sound produced by the unit is loud, 
but not annoying. Star Chase gives the 
player two ships which he must land on 
two enemy ships. Each ship can be moved 
horizontally or vertically, but the direction 
of the up-down and left-right moves is 
random. The game is a bit difficult to 
figure out from the instructions, but fun 
once you understand what is happening. 
Another nice touch is the inclusion of 
instructions on the back of the unit. 

The Generals from Ideal 

The Generals is the national game of 
the Philippines. It was introduced to this 
country a while back in the form of 
Stratego, and became quite popular. 
Ideal's version adds a new touch. In the 
game, each player has a number of pieces 
of different rank; generals with one to five 
stars, privates, agents, a flag, and others. 
The object is to capture your opponent's 
flag or get your flag to his back rank. When 
one piece attacks another by moving onto 
an occupied square, the higher ranking 
piece wins. In the old version, you could 
use low-valued pieces to attack, thus 
revealing your opponent's piece. In Ideal's 




special section of the board, then flashing 
lights indicate the winner. This adds a new 
level of strategy to the game. Those who 
liked Stratego should consider the Gen- 
erals. The game can be quite fascinating. 

Boxing, Space Laser Fight, and 
Classic Tones from Bambino 

Bambino has one of the best new lines 
of the season. Their graphics are out- 
standing, and the games are well designed, 
with high-quality plastic and contoured 
buttons. Boxing is for one or two players. 




V 



game, the players place the two pieces on a 



The control of the boxer includes stooping 
and standing up, punching at a high, 
middle, or low level, and backing up. A 
boxer who is knocked down might be able 
to get back up, but the more hits he 
receives, the better the chance he'll be 
down for the count. Playing against the 
computer results in a challenging game, 
but the player stands a good chance of 
winning at level I. Space Laser Fight is 
another game of combat for one or two 
players. Here the players jump, stand or 
stoop while firing at each other. The lasers 
can be fired at three levels, and points are 
scored for hitting your opponents legs, 
arms, or head. A head shot also results in 
temporary electronic disintegration. 
Random obstacles move between the 
players, adding to the difficulty of scoring 



a shot. At level 1, the computer is a tough 
opponent. At level 2, it is very difficult to 
win. Again, the graphics design is excellent 
and the game enjoyable. 

Bambino also sells a series of small 
electronic organs, called Classic Tones. 
The one we received had several nice 
touches, including a jack to allow for voice 
input to the speaker through a microphone 
in case the kiddies want to sing along with 
their playing. There are two knobs on the 
organ, one for volume and one which 
controls a metronome, allowing for a 
steady beat behind the music. A songbook 
and color-coded keys get the beginner 
started right away. Unfortunately, this is a 
single-voice instrument; chords can't be 
played. Still, it can serve as a good 
introduction to music for a child. 

Delux Football and 

Hippo Lot-O-Fun from Tiger 

Football comes with an interesting 
control button. It's a four-way contoured 
control that is used for selection of plays 
and movement of players. One or two 
players can play, and there are several skill 
levels. The higher levels use more men and 
move at a faster pace. After the player 
selects a running or passing play, he moves 
one of the men down the field, either 
running with the ball or running for a pass. 



24 



CREATIVE COMPUTING 



GO 



^ 



You re m command m SPACE WAR' Destroy your 
opponent s ship by forcing him to collide with the sun or to 
explode upon re-entry from hyperspace or challenge him 
face to face with missile fire You re m command of the speed 
and direction of your ship You control the timing of your 
missiles You select the game mode from five options 
including Reverse Gravity, and the battle begins Accel 
erate to place your shots -and escape into hyperspace before 
your opponent comes within range But be wary he (or she') 
may circle out of sight and reappear on the opposite side of 
the galaxy' (This is the classic MIT game redesigned 
especially for the Apple ) 






X#. 



I 



f 






4 



\r 



-v= 



• Super Invasion is the original invasion game, with the original 
moon creatures and faster action than any other invasion game. 

• Features superb high resolution graphics, nail-biting tension and 
hilarious antics by the moon creatures! 

• Self-running "attract mode" of operation for easy learning and 
demonstrating of the game. 

• As good in every way as the famous Invaders arcade game. 



High speed action ! • Sound effects! 
Runs on the Apple II and the Apple II Plus 



sc:*e =00-00 



HI -SCC~E>00060 



* # 



*pp wE: 



*% 



CIRCLE 300 ON READER SERVICE CARD 



Fifty-five aliens advance and shower you with lethal writhing 
electric worms. As you pick off the aliens, one-by-one, they 
quicken their descent. They whiz across the screen wearing away 
your parapets, your only defense, coming closer and closer to 
your level. Super Invasion is the original invasion game with the 
original moon creatures and faster action than any other invasion 
game on the market. 

Super Invasion is available for only $19.95 on cassette 
(CS-4006) for a 32K Apple II. Space War is $14.95 on cassette 
(CS-4009) for a 16K Apple II Space War and Super Invasion are on 
one disk (CS-4508) for a 48K Apple II for only $29.95. 

Send payment plus $1.00 shipping and handling to Creative 
Computing Software, P.O Box 789-M. Mornstown, NJ 07960 NJ 
residents add $1 00 sales tax. Bankcard orders may be called in 
toll free to 800/631-8112. In NJ call 201/540-0445 



sensational 
software 



creative 

competing 

software 



Toys & Games, cont'd . . . 




Each push of the switch makes the man 
move one space. This constant pushing can 
become a bit tiresome. The game also 
provides a half-time show with marching 
dots forming various patterns. 



^ -J* 



» lft*rQ*lWQ«IiUl 




Hippo Lot-O-Fun should definitely 
amuse the youngsters. A space-age crib 
toy, it has lots of buttons and knobs, all of 
which produce music. The sound might be 
a bit too quiet, but most parents can be 
glad about that. A nice touch is the 
interrupt feature. Any time a button is 
pressed, the hippo goes into action; the 
child doesn't have to wait for the previous 
activity to finish. 



Le Boom from Lakeside 

Lakeside's Le Boom is a great game 
for one or two players. The game is a 
bomb. Really. A large plastic bomb that 
will blow up if you don't play the game 
correctly. There are four games inside Le 
Boom, with several options. Instead of 





buttons, there is a sheet of heavy plastic 
with circles on it. The buttons are beneath 
this. In all of the games, clues to the correct 
sequence to push are given with sound. As 
time grows shorter, the bomb's hum rises 
to a whine. If you make a mistake or run 
out of time, Le Boom emits the sound of an 
explosion. But if you succeed, the bomb 
winds down and plays a victory tune. In 
one game, you have to press the circles 
until one of them emits a high-pitched 
sound. That circle can't be touched again, 
under penalty of blowing up. This 
continues until six such circles have been 
discovered. The other games involve 
discovering a secret circle, avoiding 
previously played circles, and finding the 
right combination of three key circles. All 
in all, a nice game. 

Flash from Ideal 

This is an electronic bean-bag target 
game. The unit can be placed on the floor 
or hung from a wall. In the center is an 
LED which displays points and other 
information. Several players can partici- 
pate, and there are five games to choose 
from. The unit is a bit loud, so lock up the 
batteries after dinner. The games are fairly 
clever. One involves hitting as many as 
possible of the segments as they light up in 
turn. Another displays the point value of 
each segment for an instant. Then the 
players have to remember which are the 
high-scoring segments. Flash would be 
good at parties since the games are loud 
and don't last too long. 

Electronic Computer Bowling 
from Vanity Fair 

The game is an enclosed alley with 
lights for pins and ball. The player releases 



the ball by pressing a bar. Releasing the bar 
will cause the ball to hook. The game, 
which is for one or two players, is 
interesting, though it doesn't take long to 
master it. Still, children might enjoy it, 
especially when played in competition. 

Super-Sonic Electronic 
Mastermind from Invicta 

This compact unit plays a numerical 
version of this well-known game with from 
three to six code numbers. The unit comes 
in an attractive plastic binder that holds 
the game and a pad that is used to keep 
track of guesses. For anyone who has lived 
on a deserted island for the last few years, 
Mastermind is a game of code breaking. 




The player makes guesses as to the 
numbers and their positions in a secret 
number. He receives clues informing him 
of how many numbers are correct but in 
the wrong position, and how many are in 
the right position. The electronic version 
keeps track of the number of guesses and 
the time spent making those guesses. There 
is an option that allows one player to enter 
a number which the other must guess. 

Next month, more toys, including a 
hand-held version of Invasion, more great 
graphics from Bambino, a drag race 
simulation, and lots of other goodies. Q 




26 



CREATIVE COMPUTING 



TRS-80® Computers 

t Ann o un ce in 
ers from Radio 





Radio Shack, builder of the world's most affordable 
and widely used classroom computer, is proud to an- 
nounce the K-8 Math Program for TRS-80. This new 
program is designed to help kindergarten through 
eighth grade students master the basics of addition, 
subtraction, multiplication and division. On both 
cassettes and diskettes, it is ideal for use with regular 
stand-alone Level II, 16K TRS-8()s or with the new 
Network I System that allows up to 16 TRS-80s to be 
connected to one TRS-80 disk system — eliminating 
the need for student loading of cassettes! 

By computerizing the tedious (yet vital) areas of 
drill, placement, testing and scoring, K-8 Math can 
greatly increase your available teaching time. Rather 
than replacing formal instruction, K-8 Math ampli- 
fies and reinforces it with proven drill and testing 
methods. 



K-8 Math is a two-part series. Part I provides skill- 
building exercises in numeration, addition and sub- 
traction for grades K to 3. Part II contains exercises in 
addition, subtraction, multiplication and division for 
grades 1 through 8, a testing mode, and a placement 
mode that moves students, automatically, to the 
proper level. A partial list of features includes Auto- 
matic Promotion of Students, Reinforcement Mes- 
sages (graphics and text) keyed to correct and incor- 
rect answers, plus a Progress Report that gives 
number of problems attempted, number and percent 
correct, and average response time of each student. 

K-8 Math is only $199.00* (Cat. No. 26-1715). 
For more information on K-8 and TRS-80 computer 
systems for education, visit your nearest Radio Shack 
outlet. 

•Retail prices may vary at individual stores and dealers. 





Video Display Characters Enlarged to Show Details 



Radio /hack 

The biggest name in little computers® 

A DIVISION OF TANDY CORPORATION • FORT WORTH, TEXAS 76102 

For more information on the K-8 Math Program and a free copy of 

our TRS-80 computer catalog, send coupon to: 

Dept. CMA-81-A-1 61. 1300 One Tandy Center, Ft. Worth, TX 76102 

I 



NAME 



SCHOOL NAME 



GRADE 



STREET. 



CITY. 



STATE 



ZIP 



PHONE NO. 



CIRCLE 243 ON READER SERVICE CARD 



NOVEMBER 1980 



27 







Computer Ambush is the second in a 
series of computer conflict simulations 
from Strategic Simulations Inc. (SSI). The 
first simulation of the series, Computer 
Bismarck was reviewed in Creative 
Computing (July, 1980). Like its predeces- 
sor, Computer Ambush is a simulation of 
combat in World War II. However in this 
game, the scale of combat is brought down 

These individual games 
range from ambushes 
and raids to design-your- 
own formats. 

from that of fleets and aircraft squadrons 
to the individual infantry soldier in France, 
1944. Human players take the role of a 
squad leader. The time scale of the 
simulation is of tenth's of seconds with 
each square on the map representing three 
meters. 

All of the elements of man-to-man 
combat are brought into play, so some 
people may find this level of conflict 
simulation too graphic to stomach. 
Knives, bayonettes, automatic weapons, 
grenades, plastic explosives, leadership, 
panic and tactical planning are all part of 
the game. Decisions each player must 
make as squad sergeant or German 
"feldwebel" must account for these 
features. In addition, each soldier in a 
player's squad is an individual. Each is 
numerically rated for weight, strength, 
intelligence, dexterity, powers of observa- 
tion and marksmanship. Thus PFC 
Charles Lawson may have exceptional 
powers of observation and dexterity, but 
rather poor ability to handle his weapon. 
Similarly, Klaus Muller may possess great 
strength, but lack common sense. There- 
fore it is up to the human player to take 
advantage of each soldier's attributes in 
order to eliminate the enemy troops or 
survive an ambush. 

Randy Heuer, 5 Dogwood Road, Morristown, NJ 
07960. 



Man-to-Man Combat 

for the Apple 



Randy Heuer 



On to the Program 

Computer Ambush is designed to run 
on a 48K Apple with Applesoft in ROM 
and at least one disk drive. Included in the 
game box are two sets of plastic coated 
maps, two information cards, a pair of 
grease pencils, a 14 page instruction 
booklet and the diskette. At the start of 
each game, the player (or players) select 
one of three solitare (one human player vs. 
the computer) or four two-player 
scenarios. These individual games range 
from ambushes and raids to design-your- 
own formats. Each player may then select a 
number of soldiers from his ten-man squad 
to use in this game. Generally speaking, it's 
wise to limit the number to four or less on 
each side, as many soldiers require a great 
deal of computation time. More on this 
problem later. 

Each player then supplies orders for 
each member of his squad to execute 
during the next turn (approximately 3-5 
seconds of simulated time). A Hi-Res map 
of the field of play is displayed along with 
the positions of the individual members of 
the squad and any "spotted" enemy 
soldiers. The player then gives each of his 
soldiers a list of commands to be executed 
in the turn. Typical commands are walk, 
crawl, run in a given direction, fall down, 
stand up, prepare weapon, fire weapon at 
an individual square or into an area if an 
enemy soldier appears, prepare grenade, 
throw grenade, etc. Each of these orders 
require a finite amount of time and energy 
to complete, and after an individual soldier 
has used up all of his time units for that 
turn, he can do no more. 

After a player has given a set of orders 
to all of the members of his squad, the 
other player (or the computer) does the 
same for his troops. When both sides have 
completed providing orders for this turn, 
the computer then executes both sides' 



orders simultaneously. This step unfor- 
tunately requires a substantial amount of 
time, as much as a half an hour or more 
when simulating a five second turn. 
Although this calculation time can be 
reduced somewhat by playing with an 
option that allows spotting of the enemy at 
all times, it still means that players spend a 
significant portion of their time waiting for 
the computer. 

It is up to the human play- 
er to take advantage of 
each soldier's attributes. 

This calculation time problem ap- 
parently stems from the fact that each time 
step simulates a tenth of a second and so 
for a five second turn, fifty time steps are 
used. During each step, the computer must 
determine whether each soldier can "see" 
any of the enemy troops, complete any 
orders and determine if any soldier is killed 
or wounded. All of these calculations 
require a considerable amount of compu- 
tation time. 

This pace will probably not deter 
those with a real interest in this type of 
simulation, but some may find this period 
of inactivity for the human player 
somewhat tedious. Since a typical game 
may require several minutes of simulated 
time, players can expect to spend several 
hours on one game. Fortunately SSI has 
provided players with the ability to save a 
game in progress on diskette which may be 
continued at a later time. 

Despite the rather lengthy playing 
time, Computer Ambush is a fairly 
entertaining and probably highly accurate 
simulation. Although I personally found 
Computer Bismarck a more enjoyable 
game, fans of that simulation will probably 
also want to acquire Computer Ambush. 
For more information, contact: 

Strategic Simulations, Inc. 

450 San Antonio Rd., Suite 62 

Palo Alto, CA 94306 □ 



28 



CREATIVE COMPUTING 



PROGRAMS FOR 
THE APPLE II 

FROM THE LEADER 
IN QUALITY SOFTWARE 




TM 



DISK SOFTWARE 



'Apple II is o registered trademark of Apple Compute' Inc 



TM 



APPILOT II 

NEW!! Designed for educators and courseware developers, this 
high level programming language takes advantage of all the 
Apple features Easy to use hi and low-res graphics. Light Pen input, 
sound and color let you create high-interest interactive lessons 

(48K. $99 95) I 

ELEMENTARY MATH EDU-DISK™ 

NEW!! Interactive lessons in elementary addition, subtraction. 

multiplication and division on 9 skill levels Extensive color graphics 

and computer voice maintain student interest Student scores 

stored on disk can be accessed only by the teacher 

(48K. $39 95) 

THE VOICE™ 

NEW!! Easily record, edit and playback words or phrases through the 

Apple speaker Record your own vocabulary, then add speech to 

your BASIC programs using Print statements Guaranteed the best. 

easiest to use speech software 

(48K. $39.95) 

THREE MILE ISLAND™ 

You are in complete control of a pressurized nuclear reactor! Avoid 
a melt-down and make a profit in this most realistic simulation A 

challenging educational game 

(48K. $39 95) 

GLOBAL WAR™ 

A challenging strategy game for 2 to 9 players Features a detailed 

hi-res map of the earth. Players are assigned armies and territories. 

and then the battle begins. Invade and occupy all territories and 

you are the winner! Save the current game on disk at any time and 

restart it later at the same point 

(48K.$24 95)A 

SUPER-LOAD™ CASSETTES 



TM 



SUPER-TEXT II 

The professional word processor An unmatched combination of 
features make this the most advanced word processor available 
Create, edit, merge or print files of any kind— letters, manuscripts, 
books Built-in Math functions for preparing financial and summary 

reports The most useful program you can own! 

(48K, $150.00) 



ADDRESS BOOK™ 

The BEST mailing list program for the Apple! Store 700 addresses per 
disk Select by record contents for viewing, label printing or 
automatic phone dialing Quickly sort the file in any order 

(48K.$49 95)A 

MICRO INFORMATION SYSTEM™ 

Versatile data base system to handle Accounts Payable. Inventory, 
selective mailings, checking • savings and much more. Easily 

modify data format to suit your needs. 

(48K. $99.95) 

U-DRAW II™ 

It's easy to create hi-res shapes, then rotate, expand or move them 

with U-Draw II Layout floor plans, arrange furniture or draw any 

shapes Save them on disk and use them in your Basic programs. 

(32K. $39.95) 

BEST OF MUSE 

Five of our most popular cassette games on one disk. Includes 
Escape. Music Box. Maze Game. Tank War and Side Shows. Hours of 

entertainment at a bargain price! 

(32K. $39.95) 



TM 



ESCAPE 

(16K.$12.95)I 

MUSIC BOX™ 

(8K. $12.95) 

APPEN-l™ TEXT EDITOR 

(8K. $17.95) I 



TANK WAR™ 

(16K. $12.95) 

MAZE GAME 

(16K.$12.95)I 

SIDE SHOWS™ 

(8K. $12.95) I 



TM 



BASEBALL 

(16K.$14.95)A 



TM 



GLOBAL WAR 

(32K.$17 95)A 



TM 



ELECTRIC CRAYON 

(8K.S1795) 

UNCLE SAMS JIGSAW™ 

(32K,$12.95)A 



TM 



U-DRAW 

(16K. $17.95) 



For a free catalog or the name of your nearest MUSE Dealer, contact: 



MUSE 



SOFTWARE 



TM 



1= Requires Integer Basic 
A= Requires Applesoft ROM 



CIRCLE226 ON READER SERVICE CARD 



330 N. CHARLES STREET 
BALTIMORE, MD 21201 
,(301)659-7212 






NOVEMBER 1980 



29 



On Effective Documentation 



Michael Robinson 



Here's a pleasant Saturday-afternoon 
task: take a program, not a simple one and 
not one of your own, and write complete 
documentation for it. The fewer remarks it 
has before you begin, the better. After you 
finish your documentation, give it to a 
novice user and see how well he under- 
stands it. Or, read it yourself, and see how 
well you understand it. 

I would expect very few people to 
jump right up and spend their days doing 
what I just suggested. I said it to make a 
point: if you for any reason were to hunt 
for an obscure, complex, poorly-docu- 
mented program, you would not have to 
look very far. Hundreds of them exist: 
programs written by someone who had 
insufficient regard for the usefulness (and 
the importance) of good, effective docu- 
mentation. After the coding and debug- 
ging of a program is finished, all too many 
programmers quit, and unwittingly leave 
the job half-done. What did they forget? 
Documentation. 

Not all programs need a user manual. 
Most programs, in fact, do not. But all 
programs need some sort of documenta- 
tion, some form of explanation showing 
both how to use the program and how the 
program works. This explanation may be 
brief, or it may be verbose. But it must be 
present, and it must be clear. Even if the 
program is not to be distributed, it should 
be documented. Few programmers re- 
member the fine details of their programs 
for very long after they finish them. But if 
the need arises to trap an obscure bug, or 
just to make the program a little bit better, 
the amount and clarity of documentation 
provided in initial and subsequent coding 
efforts will make a great deal of difference 
in how quickly and how easily the work is 
done. Everyone needs a reminder, or a re- 
explanation, now and then. It saves 
thinking the problem through again. And 
if a program is to be distributed, then 
documentation becomes vastly more 
important. Now, instead of writing for 

Michael D. Robinson, Route 4, Box 70, Ringgold, GA 
30736. 



someone already fairly familiar with the 
code, you must write for someone who has 
never seen it! It is no easy task. 

Possibly the greatest problem in 
writing effective documentation is the fact 
that the programmer who created the 
program often finds himself assuming that 
the reader knows a great deal more than he 
actually does. The programmer may find 
it difficult to explain the program in terms 
that someone else can easily understand. 
Being the author, and thus knowing well 
the background and details of the pro- 
gram's usage and operation, he tends to 
omit those details from his documentation 
and assume that the reader already knows 
and understands them. In fact, he probably 
does not. 

Documentation is not an 
incidental task, to be 
done when everything 
else is finished; it is a 
basic and very important 
part of programming. 

All documentation is written with the 
assumption that the reader knows a certain 
amount of information already. This 
amount does vary. The Level I Basic 
manual for the TRS-80, for example, was a 
strictly tutorial affair, assuming no 
programming knowledge whatsoever from 
its reader. The Level II Basic manual for 
that same computer, on the other hand, 
assumed that the reader was already 
familiar with Basic (from the Level I 
manual, perhaps?), and said so right at the 
beginning. 

Documentation for personal users 
must also be written with an understanding 
of the sequence of use that personal 
programs undergo. The reader will 
probably first experiment with the system, 
becoming familiar with it through the 
more tutorial segments of the manual, and 
then begin actually to use the system for his 



30 




particular task. Later, he will want answers 
to specific questions, without having to 
read a bunch of material he has already 
examined. He will then want to find quick 
definitions and summarizations refer- 
ence material, not tutorial material. 

Thus, good documentation must 
contain all of these: quick-reference 
summaries, detailed descriptions, and 
textual discussions of the material. In 
many documentation manuals, the quick- 
reference summaries appear at the begin- 
ning, with references to more detailed 
discussions which are presented later in the 
manual. The experienced user can flip to 
the summaries and be satisfied, while the 
less-experienced user can refer to the text 
discussions. 

Besides information for the user of the 
program, all documentation should 
contain a description of how the program 
operates. This information can, of course, 
be much more technical and less user- 
oriented than the user documentation, 
since the programmer to whom the 
technical documentation is addressed can 
be assumed to possess skill comparable to 
that of the original programmer, but the 
documentation must nevertheless be 
equally clear. All major program modules 
must be identified, preferably by remarks 
contained in the program itself. This is one 
reason that documentation should always 
include a listing of the program. 

Much documentation consists of 
comments and annotations in the source 
code. The programmer can get a good, 
leisurely look at the program, and easily 
see from the contained comments what the 
program as a whole is doing as well as what 
any given section of the program is doing. 
Therefore the documentation should also 
contain an identification and description 
of all major variables, labels, and proce- 
dures in the program, and a concise 
description of the data base used by the 
program. 

Documentation should identify the 
name of the program, begin with the 
programmer's name, the date the program 

CREATIVE COMPUTING 



The 
Software Exchange 

has it all! 



One phone call 




gives you 
these fine 




SOFTWARE 

Microsoft 

Apparat 

Racet 

Hayden 

Muse 

Ritam 

Softape 

Lance Micklus 

Image 

Quality Software 

Web Associates 

Small Systems Software 

On-Line Systems 

Creative Computing 

Personal Software * 

Scott Adams 

Acorn Software 

Synergistics 

Strategic Simulations 

Automated Simulations 

Avalon Hill 

Micro America 

Edu Ware 

Instant Software 

Interpro 

Micro Auto Systems 

Peripherals Unlimited 

Program Design 

Personal Finance Systems 

Small Business Systems Group 

Syntonic 

Seabrees Computing 



access to all 
companies. 

(IN NH CALL 673-5144) 

HARDWARE 

Square 1 

Computer Resources Company 
Radio Shack 
Commodore Pet 
Atari 




BOOKS 

Hayden 

Wiley 

Scelbi 

Compusoft 

Dilithium 

Sams 

Radio Shack 

SoftSide 

Addison Wesley 

International Jewelers 

Dome Publishing 



Percom 

Centronics 

NEC 

Sun 

Okidata 

Source/TeleComputing 

Computer Case Co. 

MicroMint 

Eaton LRC 

Cover Craft 

BSR 

BASF 

Corvus 

Archbold Electronics 

ESP 

Novation 

AMP Recording Studios 

Dysan 



M^* vffli I wwSIFC miXGmMSwmmfJC 6 south st . milford. nh 03055 

To order: Call Toll-Free 7-800-255-7790 ( m nh can ( eo3) m-sw) 

The Software Exchange & HardSide (Div of Robitaille & Sons. Enterprises. Inc ). SoftSide Publications 



MasterCard 




•CIRCLE 183 ON READER SERVICE CARD. 



NOVEMBER 1980 



31 



PERSONAL 

COMPUTER 

SYSTEMS 
icippkz computer 

Sales and Service 




4MM* 




miMM * 




APPLE II, 16K, List $1 195 $ 989 

32K, List $1395 $1169 

48K 1259 

ATARI 400™, List $630 
OUR PRICE ONLY $499 

820 PRINTER, List $599.95 $499 

810 DISK DRIVE, List $699.95 $589 

HP -85 

List $3250 




only $2799 



Extended BASIC Language 

Advance Graphics 

CRT Built-in Display 

Magnetic Tape Cartridge for Storage 



CALCULATORS BY 




What HEWLETT 
mLUM PACKARD 




HP-41C Calculator, "A System" . . 


$244.95 


HP-32E Scientific w/ Statistics . . . 


$ 53.95 


HP-33C Scientific Programmable . . 
HP-34C Advanced Scientific 


. 99.95 


Programmable 

HP-37E Business Calculator 


123.95 
. 58.95 


HP-67 Handheld Fully Advanced 
Programmable Scientific for 




Business & Engineering 

HP-97 Desktop w/Built-in Printer . . 


298.95 
579.95 



COMMODORE PET Call for Prices 

Prices do not include shipping by UPS. All 
prices and offers are subject to change without 
notice. 




Qfsonal 

Computer 
(Systems 





^» 



609 Butternut Street 

Syracuse, N.Y. 13208 

(315) 478-6800 

CIRCLE 255 ON READER SERVICE CARD 



Documentation, cont'd. . 

was originally written, the current version 
of the program, and its date. The program 
should contain this information in header 
comments, and any manuals should 
contain the information, as in: "For 
Version 6.03 of MAILIST, by Ima Good 
Programmer, written 6/ 14/79, last up- 
dated on 6/22/79 by Ima G. Program- 
mer." (Patches should also be denoted by 
remarks, including who put the patch in, 
when it was inserted, and what error the 
patch was intended to correct — especially 
since patches are usually last-minute 
insertions and can be rather difficult to 
understand.) 



The experienced user 
can flip to the summaries 
and be satisfied. 

Documentation should thus consist of 
four distinct sections: ( 1) an introduction, 
to tell the user in simple, non-technical 
terms what the program is doing; (2) a 
quick-reference guide to let the experi- 
enced user of the program get answers to 
questions quickly; (3) a more in-depth 
explanation of the program's operation 
and use, intended more for the less- 
experienced program user; and (4) a 
technical description of how the program 
works to allow other programmers to 
easily service the material. 

Documentation is not an incidental 
task, to be done when everything else is 
finished; it is a basic and very important 
part of programming. It makes the 
difference between a mediocre program 
and a good one. Documentation is the 
difference between a job half-done and a 
job well-done. □ 



Sof^wear for 

MICP0CMPUTEPS 




10 PRINT M MAY I HELP YOU 

20 INPUT «$ 

HUN 

HAY I HELP YOU ? 



32 



•7 »» 



A growing 
line of tools to 
expand the Apple 



7440A Programmable Interrupt Timer Module. 
Time events in four operating modes— continu- 
ous, single shot, frequency comparison, and 
pulse width comparison. Includes three 16-bit 
interval rimers, plus flexible patch area for 
external interface. Programmable interrupts, 
onboard ROM, and much more. 

7720A Parallel Interface. Two bi-directional 8-bit 
I/O ports will connect your Apple to a variety of 
parallel devices, including printers, paper tape 
equipment, current relays, external on/off 
devices. Full featured, programmable inter- 
rupts, supports DMA daisy chaining. 

7811 B Arithmetic Processor. Interfaces with 
Applesoft, so you just plug in and run. Based 
on the AM 9511 device, provides full 16/32-bit 
arithmetic, floating point, trigonometric, loga- 
rithmic, exponential functions. Programmed I/O 
data transfer, much, much more. 

7710A Asynchronous Serial Interface. Conform- 
ing to RS-232-C A thru E 1978 standard, this 
card will drive a variety of serial devices such as 
CRT terminals, printers, paper tape devices, or 
communicate with any standard RS-232 device, 
including other computers. Full hand-shaking, 
and fully compatible with Apple PASCAL! 

7470A 3K BCD A/D Converter. Converts a DC 
voltage to a BCD number for computerized 
monitoring and analysis. Typical inputs include 
DC inputs from temperature or pressure 
transducers. Single channel A/D, 400 ms 
per conversion. 

7490A GPIB IEEE 488 Interface. A true imple- 
mentation of the IEEE 488 standard-the 
standard protocol for instrumentation and test 
devices. Control and monitor test instruments 
such as digital voltmeters, plotters, function 
generators, or any other device using the 
IEEE 488. 

7114A PROM Module. Permits the addition to or 
replacement of Apple II firmware without 
removing the Apple II ROMs. Available with 
onboard enable/disable toggle switch. 

7500 A Wire Wrap Board. For prototyping your 
own designs. 

7510A Solder Board. 

7590A Extender Board. 

7018A 16K Dynamic Memory Add-On. 

Watch this space for new CCS products for 
the Apple. We've got some real surprises in the 
works. To find out more about the CCS product 
line, visit your local computer retailer. The CCS 
product line is available at over 250 locations 
nationally, including most that carry the Apple. 
Or circle the reader service number on this ad. 

Apple II, Apple II Plus, and Applesoft are trademarks 
of the Apple Corporation. 

CCS makes the difference 







?■■£***. 







We see it as a good 
way to get things done. 

Apple has built a great computer. We at CCS have 
built a great line of peripherals and components to expand 
the Apple. To do almost anything you want to get done 
with a computer. 

If you wartt to do business with an Apple, weVe got 
tools to connect the Apple to standard business printers and 
terminals. Or to modems, for communications over tele- 
phone lines, with other computers, even with other Apples. 

If you want to apply your Apple to engineering, scien- 
tific, or graphic projects, weVe got tools for high-powered, 



high-speed math functions, and fast, high resolution graph- 
ics. And tools to connect the Apple to lab test equipment 
like function generators or plotters. 

And we have tools to connect the Apple to the outside 
world, including A/D converters and interval timers with 
external interface. 

We make components for the S-100 bus, the PET, and 
the TRS-80, too. We built our products to deliver hard- 
nosed value to the OEM, and to the inventor who knows the 
best, at prices that are unbeaten. 

To find out how much computer your Apple II can be, 
see things our way. Because for serious users with serious 
uses for the Apple, weVe got the tools. 




iia Computer Systems 

250 Caribbean Sunnyvale, CA 94086 (408) 734-5811 



CIRCLE 123 ON READER SERVICE CARD 



The 



MAGIC WAND 



IS 





We've been saying it for a few months 
now, and the reviewers seem to agree. 

4 i Until I saw the Magic Wand, if I were allowed to own one and 

only one editor, Word Star* would have been it. . . . My personal 

preference is for Pencil or Magic Wand for text creation. 5 5 

Jerry Pournelle 
On Computing, Summer 1980 

4 4 The basic functions of the Magic Wand editor are as easy to learn 
as those of Electric Pencil*. . . . Magic Wand dominates in the area 

of print formatting. } } Larry Press 

On Computing, Summer 1980 

4 4 Of all the word processors I have used (and that includes a dozen 

or more), the Magic Wand is the most versatile. The Wand has 

almost all of the features of other processors, plus many new ones of 

its own. It measures up to even the word-processing software running 

on the largest mainframe computers.? JRod Hallen 

Microcomputing, June 1980 

4 4 The Magic Wand is one of the most flexible word processing 
packages available, and should be considered by any potential word 

processing purchaser. 9 5 Glenn A. Hart 

Creative Computing, August 1980 

Available for both the CP/M® and OASIS operating systems 

souxU business applvcaUoas, Inc. 

3220 Louisiana • Suite 205 • Houston, Texas 77006 • 713-528-5158 



CIRCLE 194 ON READER SERVICE CARD 



34 



Electric Pencil is a trademark of Michael Shrayer Software, Inc. 
WordStar is a trademark of Micro Pro International. Inc. 
CP/M is a registered trademark of Digital Research Corp 

CREATIVE COMPUTING 



Extremely Fast Sorting 

Together with a Sidelight on 
Computer Pseudo-Science 



W. D. Maurer 



" We'll get this thing sorted in 2n steps, " 
said the detective, flashing his Ph.D., 
"if nobody leaves the premises. " 

C'But I can do it a lot faster using 
this file I've hidden away," thought 
our hero.) — TN 



Sorting, either on big computers or on 
little ones, is one of the most time- 
consuming tasks a computer faces. It is no 
accident that computer scientists through 
the ages have been searching for faster 
ways to sort. The problems inherent in this 
research have recently been complicated 
by the emergence of a pseudo-science 
known as "lower-bounds analysis," which 
attempts to place lower bounds on how 
fast we can perform certain operations, of 
which sorting is a prime example. 

In this paper there will be described a 
method which can be used in most 
production environments to sort n items in 
a number of steps which is less than 2n. 
This is apparently in flagrant violation of a 
dictum which states that the absolute 
minimum number of steps we can take in a 
sort is n log n, where the logarithm is to the 
base 2. Partly in order to explain this 
discrepancy, we shall re-think the basic 
assumptions behind the above dictum and 
others like it, and try to discern how this 
particular branch of computer science 
went so badly astray. 

In order to understand more clearly 
the nature of the faulty reasoning which 
applies here, let us consider an analogy. 
During the nineteen-sixties there was a 
lively argument as to whether computers 
could ever play chess at an expert level. 
There were serious thinkers on both sides 
of the argument; as late as 1972, Dreyfus 
was saying, in his book What Computers 
Can't Do, that: "Chess . . . presents the 
problem inevitably connected with choice 
mazes: exponential growth. Alternative 
paths multiply so rapidly that we cannot 
even run through all the branching 
possibilities far enough to form a reliable 
judgment as to whether a given branch is 

W. D. Maurer, George Washington University, 
S.E.A.S., Washington, DC 20052. 

NOVEMBER 1980 



sufficiently promising to merit further 
exploration." 

Let us make this argument more 
specific. Suppose that in a given chess 
position there are 20 possible moves for 
each player, on the average. To "look 
ahead" to a depth of four moves for each 
player thus requires 25,600,000,000 
positions to be analyzed; if each analysis 
takes 100 microseconds, the total time 
required is four weeks. The data in the 
above example are plausible; there are 
varying estimates of the numbers, but the 
same conclusion is always reached: the 
amount of time that would be required to 
make even one chess move (at expert level) 
is unreasonably long. 

Many computers are not 
used to their full capacity 
and any attempt to save 
computer time makes 
little sense unless it 
simultaneously makes 
programming easier. 

Such an argument seems strange 
today, when expert-level chess programs 
abound. But what is even stranger is that, 
from a logical point of view, there is 
nothing wrong with the above argument. 
The only mistakes are in the assumptions 
from which the argument proceeds to its 
false conclusion. The key assumption is 
that each of the 25,600,000,000 positions 
actually has to be analyzed — that there 
cannot exist, in other words, techniques 
for removing from consideration whole 
classes of these without analysis, so as to 
reduce the number of analyzed positions to 
a more manageable level. 

This pattern by which false con- 
clusions are derived from false hypotheses 
by means of perfectly valid (and therefore 
publishable) arguments is what charac- 
terizes much of lower-bounds analysis. Let 
us consider the argument used to "prove" 

35 




that sorting n items must take at least n log 
n steps. According to this argument, if a 
program has k different possible out- 
comes, then at least log k steps must be 
taken. To see this, consider the following. 
A branch in a program which is the result 
of a comparison allows the program to 
have two possible outcomes. If after this 
branch (whichever way it goes) we make a 
second comparison, resulting in another 
branch, we now have four possible 
outcomes. After a third branch, we have 
eight possible outcomes, and soon. Thus 
after j comparisons, we have 2 ] possible 
outcomes, and the above result now 
follows by setting k = 2K 

How many possible outcomes are 
there of a sort? Since there are n items to 
sort, and these can be arranged in n! 
possible ways, the total number of 
outcomes is n!. The logarithm of this, to 
the base 2, happens to be comparable to n 
log n (I won't bother with the mathe- 
matical details of this), and so that 
becomes the lower bound on the timing of 
a sort. 

And yet I am about to describe a 
method of sorting that will work in most 
production environments, and that will 
take, in a typical situation, no more than 
2n steps. How is this possible? As before, 
there is no logical difficulty in the 
argument; the problem is with its under- 
lying assumptions. In this case, the key 
assumption is that every one of the n! 
outcomes of the sort is actually possible; 
or, in other words, that there cannot exist a 
way to rule out whole classes of these and 
thus to reduce the number of possible 
outcomes to a more manageable level. In 
most production environments, this is false 
and, when one frees one's mind from 
artificial constraints, quite obviously false. 

Consider a typical sort, in which we 
start with a file F, sort it, and produce a 
sorted file G. Since this is a production 
environment, the sort will take place 
periodically — every day, every week, or 
the like. Instead of a single file F, we have a 

series of files F,, F which are sorted 

to yield files G,, G 2 Our problem is 



No. 17 



Software 
with 
Man 



art / 

rith / 
ual / 



Manual 
Alone 



Software 
with 

Manual 



\l 



Manual 
Alone 



Software with 
full support 

Purchasing our software is just the 
beginning. We then back it up with 
professional support: 

■ Subscription to "LIFELINES" for automatic 
notifications of revisions! ■ Update service for 
software and documentation! ■ Telephone 
Hotline! ■ Overseas software export service! 



All Lifeboat programs require CP/M, 
unless otherwise stated. 



j/li/ 



Software 
with 

Manual 



/ 



Manual 
Alone 



Software 
with 
Manual 



/ 



Manual 
Alone 



hlW* 



CP/M* FLOPPY DISK OPERATING SYS- 
TEM— Digital Research's operating system 
configured for many popular micro-computers 
and disk systems: 

System Version Price 

Apple II* 2.x .. . .349/25 O 

SoftCard* with Z80 

Microsoft BASIC version 5 

with high resolution 

graphics 
North Star Single Density ..2.x... 170/25 
North Star Double/Quad ...2.x... 170/25 

Durango F-85 2.x . . 170/25 

iCOM Micro-Disk 241 1 1 .4 . . . 145/25 

iCOM 3712 for MITS 

88-2SIO Console 

iCOM 3712 for 

3P-S/MITS SIO 

Rev non-zero console 

.COM3812 1.4. 170/25 

Mits 3202/Altair 8800 1 .4 . . . .145/25 

Heath H8 ♦ H17 1.4 .145/25 ® 

Heath H89 1 .4 . . . .145/25 <8> 

Heath H89 by Magnolia .... 2.x .. . 300/25 O 

Ohio Scientific C3 2.x .. . 200/25 

Onyx C8001 Standard 2.x .. . 250/25 

Onyx C8001 Enhanced .... 2.x .. . 330/25 

TRS-80 Model I 1 .4 . . . .145/25 

TRS-80 Model II 2.x . 170/25 



1.4 170/25 



1.4 



170/25 



M 



2.x 



250/25 



145/25 
170/25 
170/25 

200/25 



® 
® 



250/25 
250/25 
225/25 
375/25 



TRS-80 Model II 4 Corvus 
Processor Technology 

Helios II 1.4 

Intel MDS Single Density ... 2.x 
Intel MDS Double Density 2.x 

Micropolis Mod I 2.x 

Micropolis Mod II 2.x . 200/25 

Mostek MDX STD 

Bus System 2.x .. . 350/25 ** 

The following configurations are scheduled for 

release soon: 

North Star Double/Quad 

+ Corvus 2.x 

Ohio Scientific C3-C 2.x 

iCOM3812 2.x 

iCOM 451 1/Pertec D3000 . . 2.x 
Software consist of the operating system, text 
editor, assembler, debugger and other utilities 
for file management and system maintenance. 
Complete set of Digital Research s documen- 
tation and additional implementation notes in- 
cluded. Systems marked * and ** include firm- 
ware on 2708 and 2716. Systems marked • in- 
clude 5440 media charge. Systems marked 
<8> require the special ® versions of soft- 
ware in this catalog. includes hardware ad- 
dition to allow our standard versions of 
software to run under it. 

□ Z80 DEVELOPMENT PACKAGE -Consists 
® of: (1) disk file line editor, with global inter and 
® intra-line facilities; (2) Z80 relocating assem- 
bler, Zilog/Mostek mnemonics, conditional as- 
sembly and cross reference table capabilities; 
(3) linking loader producing absolute Intel hex 

disk file $95/520 

ZDT — Z80 Monitor Debugger to break and 

®examine registers with standard Zilog/ 

® Mostek mnemonic disassembly displays $35 

when ordered with Z80 Development 

Package $50/510 



AVOCET SYSTEMS 

XASM-68— Non-macro cross-assembler with 
nested conditionals and full range of pseudo 
operations. Assembles from standard Motorola 
MC6800 mnemonics to Intel hex . . $200/525 

XASM-65-As XASM-68 for MOS Technology 
MCS-6500 series mnemonics 5200/S25 

XASM-48- As XASM-68 for Intel MCS-48 and 
UPI-41 families $200/525 

DXASM-18-As XASM-68 for RCA 1802 



y 



^ 



DISILOG-As DISTEL to Zilog/Mostek 

® mnemonic files $65/$10 

® 

SMAL/80 Structured Macro Assembler 
® Language— Package of powerful general 
purpose text macro processor and SMAL 
structured language compiler. SMAL is an as- 
sembler language with IF-THEN-ELSE, 
LOOP-REPEAT-WHILE, DO-END, BEGIN- 
END constructs $75/$15 

PHOENIX SOFTWARE ASSOCIATES 

PASM* — Z80 macro assembler, Intel/TDL 
® mnemonics Generates Intel hex format or re- 
locatable code in either TDL Object Module 
format or PSA Relocatable Binary Module for- 
mat Supports text insertion, conditional 
branching within macros, recursive macro calls 
and parameter passing S129/S25 

EDIT— Character oriented text file editor. In- 
® eludes macro definition capabilities Handles 
insertion, deletion, searching, block move, etc. 
for files of any length. Does not require a 
CRT. $129/$25 

PLINK* — Two pass disk-to-disk linkage edi- 
t tor/loader which can produce re-entrant, 
ROMable code. Can link programs that are 
larger than available memory for execution 
targeted on another machine. Full library 
capabilities. Input can be PSA Relocatable Bi- 
nary Module, TDL Object Module or Microsoft 
REL files Output can be a COM file, Intel hex 
file, TDL Object Module or PSA Relocatable 
file $129/$25 

BUG* and mBUG* — Z80 interactive machine 
® level debugging tools for program develop- 
ment BUG has full symbolic trace and interac- 
tive assembly (mnemonics compatible with 
PASM). Dynamic breakpoints and conditional 
traps while tracing (even through ROM!) /iBUG 
is a subset of BUG and is used in memory 
limited situations $129/$25 



$200/525 :$ 



D DISTEL— Disk based disassembler to Intel 
8080 or TDL/Xitan Z80 source code, listing and 
cross reference files, Intel or TDL/Xitan pseudo 
ops optional. Runs on 8080 $65/$ 10 



# 



DIGITAL RESEARCH 

MP/M— Installed for single density MDS-800. 
Multi-processing derivative of the CP/M op- 
erating system. Manual includes CP/M2 
documentation $300 $50 

MAC — 8080 Macro assembler. Full Intel macro 
©definitions. Pseudo Ops include RPC, IRP, 
REPT. TITLE, PAGE, and MACLIB. Produces 
absolute hex output plus symbol table file for 
use by SID and ZSID (see below) $120/$15 

SID — 8080 Symbolic debugger. Full trace, 
s pass count and breakpoint program testing. 
Has backtrace and histogram utilities. When 
used with MAC, provides full symbolic display of 
memory labels and equated values 5105/515 

□ ZSID— Z80 Symbolic debugger with all fea- 

®turesof SID $130/$15 

® 

TEX — Text output formatter to create paginat- 

s ed, page-numbered and justified copy Output 

can be directed to printer or disk . 5105/515 

DESPOOL— Utility program to permit simulta- 

s neous printing from text files while executing 

other programs $80/$10 

tiny C— Interactive interpretive system for 

* teaching structured programming techniques. 

Manual includes full source listings $105/550 

□ BDS C COMPILER — Supports structures, 
® unions, 2 dimensional arrays, pointers, recur- 
® sion and overlays. Features optimized code 

generator, variable sized buffers for file I/O, and 
capability to produce ROMable code. Includes 
macro package to enable user to produce link- 
able modules with MAC (see under Digital Re- 
search). Floating point functions, full run-time 
package and machine code library sources 
provided. Linker, library manager and textbook 
included. Compiler lacks initializers, statics, 
floats and longs $145/525 



L 



WHITESMITHS C COMPILER- The ultimate 
® in systems software tools. Produces faster 
® code than a pseudo-code Pascal with more 
extensive facilities Conforms to the full UNIX* 
Version 7 C language, described by Kernighan 
and Ritchie, and makes available over 75 func 
tions for performing I/O, string 
and storage allocation. Linkable to Microsoft V 
REL files. Requires 60K CP/M S630/S30 

MICROSOFT 

BASIC-80 — Disk Extended BASIC, ANSI 

©compatible with long variable names, 

® WHILE/WEND, chaining, variable length file 

records MBASIC version 4.51 also included on 

disk $325/525 

BASIC COMPILER— Language compatible 
© with BASIC-80 and 3-10 times faster execution. 
® Produces standard Microsoft relocatable bi- 
nary output. Includes MACRO-80 Also linkable 
to FORTRAN-80 or COBOL-80 code 
modules $350/525 

□ FORTRAN-80 -ANSI 66 (except for COM- 

© PLEX) plus many extensions. Includes relocat- 

® able object compiler, linking loader, library with 

manager. Also includes MACRO-80 (see 

below) $425/525 

COBOL-80- Level 1 ANSI 74 standard plus 

® most of Level 2. Full sequential, relative, and 
indexed file support with variable file names. 
Powerful interactive, formatted screen handling 
with ACCEPT and DISPLAY verbs. Program 
segmentation for execution of programs larger 
than memory and CHAIN command with pa- 
rameter passing. Full support of CP/M version 
2 files. Includes MACRO-80 (see above), link- 
ing loader, and relocatable library manager 

Requires 48K CP/M 5700/$25 

MACRO-80 — 8080/Z80 Macro Assembler. 
Intel and Zilog mnemonics supported. Relocat- 

® able linkable output Loader. Library Manager 
and Cross Reference List utilities 

included $149/$15 

XMACRO-86 — 8086 cross assembler. All 

l Macro and utility features of MACRO-80 pack- 
age. Mnemonics slightly modified from Intel 
ASM86. Compatibility data sheet 

available $275/525 

EDIT-80 — Very fast random access text editor 

© for text with or without line numbers. Global and 
intra-line commands supported File compare 
utility included S89/S15 

PASCAL/M* — Compiles enhanced Standard 
» Pascal to compressed efficient Pcode. Totally 
CP/M compatible Random access files. Both 
16 and 32-bit Integers. Runtime error recovery 
Convenient STRINGS. OTHERWISE clause on 
CASE. Comprehensive manual (90 pp inde- 
xed). SEGMENT provides overlay structure. 
INPORT, OUTPORT and untyped files for arbi- 
trary I/O. Requires 56K CP/M. Specify 1) 8080 
CP/M, 2) Z80 CP/M, or 3) Cromemco 

CDOS $175/520 

PASCAL/Z-Z80 native code PASCAL com- 
© piler. Produces optimized, ROMable re-entrant 
® code. All interfacing to CP/M is through the 
support library. The package includes compiler, 
relocating assembler and linker, and source 
for all library modules. Variant records, strings 
and direct I/O are supported. Requires 56K 

CP/M 5395/525 

PASCAL/MT- Subset of standard PASCAL. 
® Generates ROMable 8080 machine code 
® Symbolic debugger included. Supports inter- 
rupt procedures, CP/M file I/O and assembly 
language interface. Real variables can be BCD, 
software floating point, or AMD 9511 hardware 
floating point. Includes strings enumerations 
and record data types Manual explains BASIC- 
PASCAL conversion Requires 32K 5250/530 
APL/V80— Concise and powerful language for 
® application software development Complex 
programming problems are reduced to simple 
expressions in APL. Features include up to 27K 
active workspace, shared variables, arrays of 
up to 8 dimensions, disk workspace and copy 
object library. The system also supports auxil- 
iary processors for interfacing I/O ports. Re- 
quires 48K CP/M and serial APL printing termi- 
nal or CRT $500/530 

ALGOL-60— Powerful block-structured lan- 
® guage compiler featuring economical run-time 
® dynamic allocation of memory. Very compact 
(24K total RAM) system implementing almost 
all Algol 60 report features plus many powerful 
extensions including string handling direct disk 
address I/O etc 5199/520 

CBASIC-2 Disk Extended BASIC- Non- 
® interactive BASIC with pseudo-code compiler 
and run-time interpreter Supports full file con- 
trol, chaining, integer and extended precision 
variables, etc. Versions of CRUN for CP/M ver- 
sions 1.4 and 2.x included on disk 5120/515 

MICRO FOCUS 

STANDARD CIS COBOL- ANSI 74 COBOL 
© standard compiler fully validated by US Navy 
tests to ANSI level 1 . Supports many features to 
level 2 including dynamic loading of COBOL 
modules and a full ISAM file facility. Also, pro- 
gram segmentation, interactive debug and 
powerful interactive extensions to support pro- 
tected and unprotected CRT screen formatting 
from COBOL programs used with any dumb 
terminal $850/550 

FORMS 2 — CRT screen editor Output is 
® COBOL data descriptions for copying into CIS 
COBOL programs. Automatically creates a 
query and update program of indexed files 
using CRT protected and unprotected screen 
formats No programming experience needed 
Output program directly compiled by STAN- 
DARD CIS COBOL $200/520 



NEVADA COBOL- Subset of ANSI-74 Fea- 
I tures fast compilation and execution with small 
object modules. Has extended arithmetic with 
^18 digit accuracy Extended I/O includes ran- 
T dom access files and sequential files of both 
»q\Jp fixed and variable length records, and interac- 
manipulation^*' tive accept/display verbs. Good error mes- 
sages and debugging facilities enhance pro- 
gram development Requires a 32K CP/M 
system $149/$25 

EIDOS SYSTEMS 

KBASIC— Microsoft Disk Extended BASIC 
version 4 51 integrated with KISS Multi-Keyed 
Index Sequential and Direct Access file man- 
agement as 9 additional BASIC commands. 
KISS included as relocatable modules linkable 
to FORTRAN-80, COBOL-80. and BASIC 
COMPILER Specify CP/M version 14 or 2.x 
when ordering. Requires 48K CP/M S585/S45 
To licensed users of Microsoft BASIC-80 
(MBASIC) $435/545 

XYBASIC Interactive Process Control 
BASIC — Full disk BASIC features plus unique 
commands to handle byte rotate and shift and 
to test and set bits. Available in several ver- 
sions: 

Integer ROM squared $350/525 

Integer CP/M $350/525 

Extended ROM squared $450/525 

Extended CP/M $450/525 

Extended Disk CP/M $550/525 

Integer CP/M Run Time Compiler $350/525 
Extended CP/M Run Time Compiler $450/525 



[ 



RECLAIM — A utility to validate media under 
CP/M. Program tests a diskette or hard disk 
surface for errors, reserving the imperfections 
in invisible files, and permitting continued 
usage of the remainder. Essential for any hard 
disk Requires CP/M version 2 S80/S5 

BASIC UTILITY DISK -Consists of: (1) 
®CRUNCH-14— Compacting utility to reduce 
the size and increase the speed of programs in 
Microsoft BASIC 4.51. BASIC-80 and TRS-80 
BASIC. (2) DPFUN — Double precision subrou- 
tines for computing nineteen transcendental 
functions including square root, natural log, log 
base 10, sine, arc sine, hyperbolic sine, hyper- 
bolic arc sine, etc. Furnished in source on dis- 
kette and documentation S50/S35 

STRING/80 — Character string handling plus 
routines for direct CP/M BDOS calls from 
FORTRAN and other compatible Microsoft lan- 
guages. The utility library contains routines that 
enable programs to chain to a COM file, retrieve 
command line parameters and search file direc- 
tories with full wild card facilities Supplied as 
linkable modules in Microsoft format 595/520 

STRING/80 source code available 
separately— 5295/NA 

THE STRING BIT- FORTRAN character 
m string handling Routines to find, fill, pack, 
move, separate, concatenate and compare 
character strings This package completely 
eliminates the problems associated with 
character string handling in FORTRAN 
Supplied with source $65/515 

VSORT— Versatile sort/merge system for fixed 
® length records with fixed or variable length 
fields. VSORT can be used as a stand-alone 
package or loaded and called as a subroutine 
from CBASIC-2 When used as a subroutine 
VSORT maximizes the use of buffer space by 
saving the TPA on disV, ana lesNwv.^ A ot> com- 
pletion of sorting Records may be up to 255 
bytes long with a maximum of 5 fields Upper/ 
lower case translation and numeric fields 
supported S175/S20 

CPM/374X — Has full range of functions to 
create or re-name an IBM 3741 volume, display 
directory information and edit the data set con- 
tents. Provides full file transfer facilities be- 
tween 3741 volume data sets and CP/M 
files S195/S10 



(^«4 S(^^y 



CPAids* 



MASTER TAX — Professional tax preparation 
[ program. Prepares schedules A, B, C, D, E, F 
t G, R/RP, SE, TC, ES and forms 2106, 2119, 
2210. 3468, 3903, 2441, 4625. 4726, 4797. 
4972, 5695 and 6251 Printing can be on readily 
available, pre-printed continuous forms, on 
overlays, or on computer generated, IRS ap- 
proved forms Maintains client history files and 
is interactive with CPAids GENERAL LEDGER 

II (see below) 5995/530 

Annual Update Fee $350 

STANDARD TAX — As above for schedules A, 

f B, C, D, E, G. R/RP. SE. TC and forms 2106 and 

2441. Also, does not maintain client history 

files 5495/530 

Annual Update Fee 5175 

GENERAL LEDGER II- Designed for CPAs 
t Stores complete 12 month detailed history of 
transactions Generates financial statements, 
depreciation, loan amortizations, journals, trial 
balances, statements of changes in financial 
position, and compilation letters Includes 
payroll system with automatic posting to gen- 
eral ledger Prints payroll register, W2 s and 
payroll checks S450/S30 



Lifeboat Associates, 1651 Third Avenue, NY., N.Y. 10028(212) 860-0300 Telex:220501 
Neu in der Schweiz Lifeboat Associates GmbH, Aegenstr 35 6340 Baar Telefon 042/31 2931 



Copyright © 1980 Lifeboat Associates. No por- 
tion of this advertisement may be reproduced 
without prior permission 



Software 
with 

Manual 



/ 



Manual 
Alone 



T/MAKER— Powerful new tool for preparing 
jl management reports with tabular data Makes 
oil/ financial modeling projects easy Do you want a 
I xr weekly profitability report? Set up the table and 
compute Just change the sales figures for next 
week and compute. You have a new report! 
T/MAKER includes a full screen editor for 
setting up tables which pages left, right, up 
and down. Compute includes standard arith- 
metic, percents, exponents, common tran- 
scendental functions, averages, maxima, 
minima, projections, etc Requires 48K CP/M, 
CBASIC-2. CRT Terminal with addressable 
cursor positioning $275/$25 



Software / 

with / Manual 
Manual/ Alone 

□ MAGIC WAND — Word processing system with 
, simple, easy to use full screen text editor and 
<r powerful print processor. Editor has all standard 
ilGr ed ' tin 9 Unctions including text insert and de- 
\V t ' lete, global search and replace, block move and 
library files for boiler plate text. Print processor 
formatting commands include automatic mar- 
gins, pagination, headings & footings, centered 
and justified text. Also prints with true propor- 
tional spacing, merges with data files for au- 
tomatic form letters, and performs run-time 
conditional testing for varied output Requires 
32K CP/M and CRT terminal with addressable 
cursor $395/540 



D BSTAM — Utility to link one computer to another 
<S> also equipped with BSTAM Allows file transfers 
at full data speed (no conversion to hex), with 
CRC block control check for very reliable error 
detection and automatic retry. We use it! It's 
great! Full wildcard expansion to send * COM, 
etc 9600 baud with wire 300 baud with phone 
connection Both ends need one Standard and 
® versions can talk to one another. This 
software requires a knowledge of assembler 
language for installation S150/S10 

GBSTMS— Intelligent terminal program for 
®CP/M systems. Permits communication be-o 
tween micros and matn1ram.es. Sends charac-n 
ter data files to remote computers under com- 
plete control. System can record character data 
sent from remote computer systems and data 
banks. Includes programs to EXPAND and 
COMPRESS binary files for transmission. This 
software requires a knowledge of assembler 
language for installation S200/S25 

□ WHATSIT?* — Interactive data-base system 
using associative tags to retrieve information by 
subject. Hashing and random access used for 
fast response Requires CBASIC-2 $175/$25 

□ SELECTOR III-C2— Data Base Processor to 
t create and maintain multi-key data bases 
® Prints formatted sorted reports with numerical 

summaries or mailing labels. Comes with sam- 
ple applications, including Sales Activity, Inven- 
tory, Payables, Receivables, Check Register, 
and Client/Patient Appointments, etc. Requires 
CBASIC-2 Supplied in source S295/S20 

□ GLECTOR — General Ledger option to 
SELECTOR III-C2. Interactive system provides 
for customized COA. Unique chart of transac- 
tion types insure proper double entry book- 
keeping Generates balance sheets, P&L 
statements and journals. Two year record al- 
lows for statement of changes in financial posi- 
tion report Supplied in source Requires 
SELECTOR III-C2. CBASIC-2 and 56K 
system $350/525 

DMA 

□ CBS — Configurable Business System is a 
t comprehensive set of programs for defining 

custom data files and application systems with- 
out using a programming language such as 
BASIC, FORTRAN, etc Multiple key fields for 
each data file are supported. Set-up program 
customizes system to user's CRT and printer. 
Provides fast and easy interactive data entry 
and cettvevaA with transaction processing. 
Report generator program does complex calcu- 
lations with stored and derived data, record 
selection with multiple criteria, and custom for- 
mats Sample inventory and mailing list sys- 
tems included No support language 
required $395/$40 



MICROPRO 

□ SUPER-SORT I — Sort, merge, extract utility as 
© absolute executable program or linkable mod- 
ule in Microsoft format. Sorts fixed or variable 
records with data in binary, BCD. Packed Deci- 
mal, EBCDIC, ASCII, floating & fixed point, ex- 
ponential, field justified, etc Even variable 
number of fields per record! S225/S25 

□ SUPER-SORT II — Above available as abso- 
© lute program only S175/S25 

□ SUPER-SORT III- As II without SELECT/ 
© EXCLUDE $125/$25 

DDATASTAR — Professional forms control entry 
© and display system for key-to-disk data cap- 
ture. Menu driven with built-in learning aids. 
Input field verification by length, mask, attribute 
(i.e. upper case, \ower case, numeric, auto-dup, 
etc.). Built-in arithmetic capabilities using keyed 
data, constant and derived values. Visual feed- 
back for ease of forms design Files compatible 
with CP/M-MP/M supported languages Re- 
quires 32K CP/M $350/$35 

DWORD-STAR— Menu driven visual word pro- 
© cessing system for use with standard terminals. 
Text formatting performed on screen. Facilities 
for text paginate, page number, justify, center 
and underscore User can print one document 
while simultaneously editing a second. Edit 
facilities include global search and replace. 
Read/Write to other text files, block move. etc. 
Requires CRT terminal with addressable cursor 
positioning $445/540 

□ WORD-STAR-MAIL-MERGE -As above with 
© option for production mailing of personalized 

documents with mail lists from DATASTAR or 
NAD $575/$40 

DWORD-MASTER Text Editor— In one mode 
© has superset of CP/M s ED commands includ- 
ing global searching and replacing, forwards 
and backwards in file in video mode, provides 
full screen editor for users with serial address- 
able-cursor terminal $145/525 



D TEXTWRITER III — Text formatter to justify and 
® paginate letters and other documents. Special 
features include insertion of text during execu- 
tion from other disk files or console, permitting 
recipe documents to be created from linked 
fragments on other files Has facilities for sorted 
index, table of contents and footnote insertions. 
Ideal for contracts, manuals, etc Now compati- 
ble with Electric Pencil* and Word-Star pre- 
pared files $125/$20 

DATEBOOK — Program to manage time just 
4 like an office appointment book but using the 
f^y speed and memory of a computer. Keeps track 
Mr of three appointment schedules (three dental 
chairs, three attorneys, etc.) at once. Appoint- 
ments consist of name, reason for the appoint- 
ment, the date and time, and the length of the 
appointment System can be quickly cus- 
tomized for the individual user. Many helpful 
features for making, changing, finding, and re- 
porting appointments. Requires 48K CP/M and 
180K bytes diskette storage. Not available for 

Apple CP/M $295/$25 

■ — — »•. — — — »••-. — — — — — •« — — — — — 

PEACHTREE SOFTWARE* 

D General accounting software for small busi- 

© nesses Each product can be used alone or with 

t automatic posting to the general ledger. 

Supplied in source for Microsoft BASIC 4.51. 

GENERAL LEDGER S530/S40 

ACCOUNTS PAYABLE $530/$40 

ACCOUNTS RECEIVABLE $530/540 

PAYROLL 5530/540 

INVENTORY 5660/540 

D Other application products supplied in source 
© for Microsoft BASIC 4 51 

t MAILING ADDRESS 5530/540 

PROPERTY MANAGEMENT 5925/540 

GRAHAM-DORIAN SOFTWARE 
SYSTEMS 

D Comprehensive accounting software written in 
© CBASIC-2 and supplied in source code Each 
® software package can be used as a stand- 
t alone system or integrated with the General 
Ledger for automatic posting to ledger ac- 
counts Requires CBASIC-2 

GENERAL LEDGER 5805/540 

ACCOUNTS PAYABLE 5805/540 

ACCOUNTS RECEIVABLE 5805/540 

INVENTORY SYSTEM 5555/540 

JOB COSTING 5805/S40 

APARTMENT MANAGEMENT 5805/540 

CASH REGISTER 5805/540 

D POSTMASTER — A comprehensive package 
® for mail list maintenance that is completely 
menu driven. Features include keyed record 
extraction and label production. A form letter 
program is included which provides neat letters 
on single sheet or continuous forms. Includes 
NAD file translator. Requires CBASIC-2 
5150/520 

STRUCTURED SYSTEMS GROUP 

Complete interactive accounting software for 
t business Each product can be used stand- 
alone or with automatic posting to the general 
ledger Each product is thoroughly tested and 
very well documented. Each product requires 
CBASIC-2. 

GENERAL LEDGER 5820/540 

ACCOUNTS RECEIVABLE 5820/540 

ACCOUNTS PAYABLE 5820/540 

PAYROLL 5820/540 

INVENTORY CONTROL 5820/540 




NEWSLETTER 
FROM LIFEBOAT 

LIFELINES is the first step in software support for 
the serious microcomputer user Each issue 
reports new revisions together with information on 
the purpose for each such release, be it for correction 
of bugs or the addition of features and facilities 

Feature Articles ! New Software ! Product 
Comparisons ! Info on CP/M Users Group ! 

SUBSCRIPTION INFORMATION: 

$18 for twelve issues: U.S., Canada, and Mexico. 

$40 for twelve issues: all other countries. 

$2.50 for each back issue: US, Canada, and 
Mexico 

$3.60 for each back issue: all other countries 
Send Check to LIFELINES. 1651 Third Avenue, 
New York. NY 10028 or use your VISA or 
MASTERCARD - call (2 1 2) 722- 1 700 



Software / 

with / Manual 
Manual / Alone 

D ANALYST— Customized data entry and report- 
t ing system User specifies up to 75 data items 
per record. Interactive data entry, retrieval, 
and update facility makes information 
management easy Sophisticated report 
generator provides customized reports using 
selected records with multiple level break- 
points for summarization. Requires a disk sort 
utility such as QSORT, SUPER-SORT or 
VSORT and CBASIC-2 5250/515 

DLETTERIGHT— Program to create, edit and 
type letters or other documents. Has facilities to 
enter, display, delete and move text, with good 
video screen presentation. Designed to inte- 
grate with NAD for form letter mailings. Re- 
quires CBASIC-2 5200/525 

DNAD Name and Address selection system — 
Interactive mail list creation and maintenance 
program with output as full reports with refer- 
ence data or restricted information for mail 
labels. Transfer system for extraction and trans- 
fer of selected records to create new files Re- 
quires CBASIC-2 5100/520 

DOSORT— Fast sort/merge program for files 
with fixed record length, variable field length 
information. Up to five ascending or descend- 
ing keys. Full back-up of input files created 
5100/520 

• •••••• 

CONDIMENTS 

*••••*• 

DHEAD CLEANING DISKETTE- Cleans the 

drive Read/Write head in 30 seconds Diskette 
absorbs loose oxide particles, fingerprints, and 
other foreign particles that might hinder the per- 
formance of the drive head. Lasts at least 3 
months with daily use Specify 5 or 8 

Single sided 520 each/555 for 3 

Double sided 525 each/565 for 3 

DDC 300 Data Cartridges Specify 450 XL or 
300 certified. Pack of 5 5100 

D FLIPPY DISK KIT— Template and instructions 
to modify single sided 5w" diskettes for use of 
second side in single sided drives 512.50 

D FLOPPY SAVER — Protection for center holes 
for 5 and 8" floppy disks. Only 1 needed per 
diskette. Kit contains centering post, pressure 
tool and tough 7 mil mylar reinforcing rings for 
25 diskettes 

5", Kit 514.95 

5 ", Rings only 57.95 

8". Kit S16.95 

8", Rings only 58.95 

D PASCAL USER MANUAL AND REPORT- By 

Jensen and Wirth. The standard textbook on 
the language. Recommended for use by 
Pascal/Z, Pascal/M and Pascal/MT users 512 



DTHE C PROGRAMMING LANGUAGE- By 

Kernighan and Ritchie. The standard textbook 
on the language Recommended for use by 
BDS C, tiny C, and Whitesmiths C users . 512 

STRUCTURED MICROPROCESSOR PRO- 
GRAMMING- By the authors of SMAL/80. 
Covers structured programming, the 8080/ 
8085 instruction set and the SMAL/80 lan- 
guage 520 

DACCOUNTS PAYABLE & ACCOUNTS 

RECEIVABLE-CBASIC-By Osborne/ 
McGraw-Hill 520 

GENERAL LEDGER- CBASIC- By 

Osborne/McGraw-Hill 520 

PAYROLL WITH COST ACCOUNTING- 
CB ASIC — by Osborne/McGraw-Hill 520 

***•••• 

Hearty Appetite. 

•••••••• 

*CP/M and MP/M are trademarks of Digital Re- 
search. 

Z80 is a trademark of Zilog, Inc. 
UNIX is a trademark of Bell Laboratories. 
WHATSIT? is a trademark of Computer Head- 
ware. 

Electric Pencil is a trademark of Michael 
Shrayer Software. 

TRS-80 is a trademark of Tandy Corp 
Pascal/M is a trademark of Sorcim. 
SoftCard is a trademark of Microsoft. 
Apple is a trademark of Apple Computer. 
PASM. PLINK, BUG and mBUG are trademarks 
of Phoenix Software Associates Ltd. 
CPAids is a trademark of Computer Tax Ser- 
vice, Inc. 

MAGIC WAND is a trademark of Small Busi- 
ness Application, Inc. 

Peachtree Software is a trademark of Retail 
Sciences, Inc 



t Recommended system configuration consists 
of 48K CP/M, 2 full size disk drives, 24 x 80 CRT 
and 132 column printer 

® Modified version available for use with CP/M as 
implemented on Heath and TRS-80 Model I 
computers. 

® User license agreement for this product must 
be signed and returned to Lifeboat Associates 
before shipment may be made. 

© This product Includes/eXcludes the language 
® manual recommended in Condiments. 

I Serial number of CP/M system must be 
supplied with orders. 

® Requires Z80 CPU. 



Ordering Information 



MEDIA FORMAT ORDERING CODES 
When ordering, please specify format code. 



LIFEBOAT ASSOCIATES MEDIA FORMATS LIST. Diskette, cartridge disk and cartridge tape 
format codes to be specified when ordering software for listed computer or disk systems All 
software products have specific requirements in terms of hardware or software support, such as 
MPU type, memory size, support operating system or language. 



Computer system 



Format Cod* Computer system 



Format Code 



Computer system 



Format Code 



Altair 8800 Disk See MITS 3200 

Altos AT 

Apple - SoftCard 13 Sector RG 

Apple • SoftCard 16 Sector RR 

AVL Eagle RB 

BASF System 7100 RD 

Blackhawk Single Density Q3 

Blackhawk Micropolis Mod II Q2 

CDS Versatile 3B Q1 

CDS Versatile 4 Q2 

COMPAL-80 Q2 

Cromemco System 3 A1* 

Cromemco Z2D R6 

CSSN BACKUP (tape) T1 # 

Delta A1* 

Digi-Log Microterm II RD 

Digital Microsystems AT 

Discus See Morrow Discus 

Durango F-85 RL 

Dynabyte DB8/2 R1 

Dynabyte DB8/4 A1* 

Exidy Sorcerer • Lifeboat CP/M Q2 
Exidy Sorcerer • Exidy CP/M Q4 
Heath H8 • H17/H27 P4 

Heath H89 • Lifeboat CP/M P4 

Heath H89 • Magnolia CP/M P7 
Helios II See Processor Technology 

Horizon See North Star 

iCOM 241 1 Micro Floppy R3 

ICOM3712 A1 

ICOM3812 A1* 

Prices reflect distribution on 8 
single density diskettes. If a 
format is requested which 
requires additional diskettes, a 
surcharge of $8. per additional 
diskette will be added. 

Prices FOB. New York 
Shipping, handling and COD 
charges extra. 

Manual cost applicable against 
price of subsequent software 
purchase. 

The sale of each proprietary 
software package conveys a 
license for use on one 
system only. 



M< ]<•*»■.,' cjfd 




iCOM 451 1 5440 Cartridge 

CP/M 1 4 D1# 

iCOM 451 1 5440 Cartridge 

CP/M 2 2 D2# 

IMS 5000 RA 

IMS 8000 Al* 

IMSAI VDP-40 R4" 

IMSAI VDP-42 R4" 

IMSAI VDP 44 R5" 

IMSAI VDP-80 Al" 

Intecolor See ISC Intecolor 

Intel MDS Single Density A2 

Intel MDS Double Density A5 

Intertec SuperBram DOS 1 R7 

Intertec SuperBram DOS 5-2 X RJ 
Intertec SuperBram DOS 3 X RK 

ISC Intecolor 8063/8360/8963 A1 
Kontron PSI-80 RF 

Meca5U P6 

Micromation 

(Except TRS-80 below) A1 * 

Micropolis Mod I Q1 

Micropolis Mod II Q2 

MITS 3200/3202 B1 

Morrow Discus A1* 

Mostek A 1 

MSD5'« RC 

North Star Single Density Pi 

North Star Double/Quad P2 

Nylac Single Density Q3 

Nylac Micropolis Mod II Q2 

Ohio Scientific C3 A3 

Onyx C8001 T2# 

Pertec PCC 2000 Al* 

Processor Technology Helios II B2 
Quay 500 RO 

Quay 520 RP 

RAIR Single Density R9 

* Single-Side Single-Density disks 
are supplied for use with Double- 
Density and Double-Side 8 soft 
sector format systems 
" IMSAI formats are single density 
with directory offset of zero 

# A media surcharge of $25 for or- 
ders on tape formats T 1 and T2 and 
of $100 for orders on disk formats 
D1 and D2 will be added 
The list of available formats is sub- 
ject to change without notice In 
case of uncertainty, call to confirm 
the format code for any particular 
equipment 



RAIR Double Density RE 

Research Machines 8 A1 

Research Machines 5' 4 RH 

REX Q3 

Sanco 7000 5*4 RQ 

SD Systems 8 AT 

SD Systems 5' 4 R3 

Sorcerer See Exidy Sorcerer 

Spacebyte A1 

SuperBram See Intertec 

Tarbell A1* 

TEI5V4 R3 

TEI8 Al* 

Thinkertoys See Morrow Discus 

TRS-80 Model I 5'4 R2 

TRS-80 Model I - FEC Freedom RN 
Micromation 
Omikron 5*4 
Omikron 8 
Shuffleboard 8 



TRS-80 Model I 
TRS-80 Model I 
TRS-80 Model I 
TRS-80 Model I 
TRS-80 Model II 



A4* 

RM 

Al 

A1 

AT 



VDP-40/42/44/80 See IMSAI 

Vector Graphic Q2 

Vector MZ 02 

Versatile See CDS Versatile 

Vista V80 5 1 4 Single Density P5 
Vista V200 5' 4 Double Density P6 
Zenith Z89 Lifeboat CP/M P4 

Zenith Z89 • Magnolia CP/M P7 





boat Associates 



Lifeboat Associates 

1651 Third Avenue, N.Y, N.Y. 10028 



Sorting, cont'd . . . 

then to sort a typical file Fj to produce the 
corresponding sorted file Gj. Also since 
this is a production environment, there are 
backup files in existence, namely Fj j and 
G; |. Furthermore there is some relation- 
ship between Fj and Fj _ ( ; we shall assume 
that Fj was derived from Fj j by certain 
transactions (insert, delete, replace) and 
that the total number of these transactions 
is small in comparison to the total size of 
Fi. This last assumption is often, but not 
always, valid, which is why we have 
specified that our method will work in 
most (but not all) production environ- 
ments. 

The first step in our sorting method is 
to set up still another file, which we call Ti. 
We assume that Fj is derived from Fi- 1 , not 
all at once, but as a result of a series of 
transactions which took place since Fj_| 
was sorted to yield Gj_|. Every time such a 
transaction takes place, in addition to 
updating Fj ,, we record the transaction, 
together with its date, on the file Tj. The 
extra time this takes is proportional to the 
number of transactions, which we shall call 
m. 

To perform the sort, we first sort the 
file Tj, using the date as a secondary key. 
That is, if there are transactions on Tj with 
identical keys, these are arranged in order 
of their dates (which are recorded on Tj). 
This is a conventional sort and takes m log 
m steps. We are assuming that m is small 
compared with n, and we will make this 
explicit by requiring that m log m be less 
than n. For example, if there are 1000 
records in the file and 100 transactions 
(n - 1000, m = 100), then the condition is 
satisfied, since m log m is approximately 
700 in this case. Thus the number of steps 
in this initial sort will be less than n; we 
denote the resulting sorted file by Uj. 

Finally, we produce the new sorted 
file Gi by merging Uj with the backup file 
Gj |. Our reasoning is as follows. Every 
record in Fj is also in Gj; every record in 
Fj j is also in Gj_|. Hence the only 
differences between Gj_| (which we have 
kept around) and Gi (which we are to 
produce) are those indicated by the trans- 
actions which took place on Fj | to 
produce Fj. Each of these transactions, in 
turn, is on Tj; and whenever we have 
several transactions on the same record in 
Gi, we have them in their historical order, 
so that their performance always leads to 
the correct final result. 

The importance of this last point may 
be illustrated as follows. Suppose that Fj is 
a personnel file, normally sorted by 
employee's name, which is sorted every 
month by zip code in order to mail 
paychecks. Suppose that at the beginning 
of the month one employee moves from the 
main office M to a branch office B and then 
moves back before the end of the month. 
Thus there are two transactions involving 
the "which-office?" field: "change to B" 
and "change to M." These have to be done 
in the correct order; otherwise, the final 




Figure I 



value of the "which-office?" field will be B 
rather than M. Using the date as a 
secondary key guarantees to us that the 
correct order will be used. 

The reason for sorting Tj is that the 
sorted file Uj can now be merged with Gj_i 
in n steps, so that the total number of steps 
is less than 2n, as we specified earlier. (A 
merge of two files, producing a result file of 
length n, and taking n steps, works only if 
both files are sorted, and in the same way.) 
The merge must actually be modified to 
produce, on the result file Gj, the result of 
applying the transactions in Uj, rather than 
the transactions themselves. For example, 



a record in Fj. | might be of the form 
N="SMITH, JOHN J.",S=2400000, 
Z=20037,W="lvT, ... (*) 

If Smith moves from the main office to the 
branch office, this record would be 
changed to read 

N="SMITH, JOHN J.'\S=2400000, 
Z=20037,W="B", . . . (**) 

and, at the same time, a transaction record 
would be written onto Ti. Assuming that 
the sort is on the field Z (the zip code), the 
transaction record would be of the form 
T="R",Z=2 10037, W="B" (***) 

Here T="R" stands for "transaction type = 
replace"; we are performing a replacement 



38 



CREATIVE COMPUTING 



Edison had over 
1,800 patents in 

his name, but 
can be just as inventive 
with an Apple. 



Apple is the company with the brightest ideas in 
hardware and software and the best support — so you can 
be as creative with a personal computer system as Edison 
was with the incandescent bulb. 

How Apple grows with you. 

With Apple's reliable product family, the possibilities of 
creating your own system are endless. Have expansion capa- 
bilities of 4 or 8 accessory slots with your choice of system. 

Expand memory to 64K bytes or 128K bytes. Add an 
A to D conversion board. Plug into time sharing, news and 
electronic mail services. Use an IEEE 488 bus to monitor 
lab instruments. Add 4 or 6 disk drives — the 5V4" 143K 
bytes, high-speed, low-cost drive that's the most popular 
on the market. 

Apple speaks many languages. 

Since more than 100 companies create software for 
Apple, you'll have the most extensive library in the personal 



1 





computer world. Want to write your own programs? 
Apple is fluent in BASIC, Pascal, FORTRAN, PILOT and 
6502 assembly language. 

There's even a series of utility programs called the 
DOS Tool Kit that not only lets you design high-resolution 
graphic displays, but lets you work wonders with 
creative animation. 

More illuminating experiences in store. 

You won't want to miss all the Apple products being 
introduced at your computer store all the time. Don't let 
history pass you by. Visit your nearest 
Apple dealer or call 800-538-9696. 
In California, 800-662-9238. Or write: 
Apple Computer, 10260 Bandley Drive, 
Cupertino, CA 95014. 

cippkz computer inc. 









' ■■ - 








RVICECARD 



Sorting, cont'd . . . 

in the record whose key (when it gets into 
G M ) will be Z=20037, and the field that is 
being replaced is the W field, which is being 
changed to "B." This record (***) will also 
appear in Uj, since Uj was produced by 
sorting Tj, while the original record (*) will 
appear in Gj i, since this is a sorted version 
of Fi i. During the merge, we are reading 
both files in sorted order, and thus we will 
come to the original record (*) and the 
transaction record (***) at the same time. 
Instead of putting both of these on the 
output file, which is what would happen in 
a normal merge, we apply (***) to (*), 
producing (**), which is written on the 
output file. Specifically, in this case, we 
would change the W="M" to W="B." 

In order to explain the workings of 
multiple replacements to a record, as well 
as "transaction type = insert" and 
"transaction type = delete," we review the 
basic principles of merging. In each of our 
three files (G l ,, U§, and Gj, in this case) we 
have a current record; we denote these 
three current records by r,, r 2 , and r 3 , 
respectively. These have keys k u k 2 , and k 3 , 
respectively, the key being the zip code in 
this case. In each file we also have an initial 
segment (the part of the file that precedes 
the current record); the initial segments of 
Gi_i and Uj have already been merged to 
form the initial segments of Gj. In a normal 
merge, we would proceed as follows: 

1. If ki < k2, then we set r 3 = n and 
advance the current record of the first file 
by 1. 

2. If k! > k 2 , then we set r 3 = r 2 and 
advance the current record of the second 
file by 1 . 

3. If k, = k 2 , then we do either of the 
above (if duplicate keys are allowed in the 
result file); or we do both of the above (if 
they are not). 

4. In any case, we then advance the 
current record of the third file by 1 . 

Our modified merge will proceed as 
follows. Remember that r, is the current 
record in the old sorted file, while r 2 is the 
current record in the transaction file. 

a. If ki <k 2 , then there is no trans- 
action which applies to the current record; 
we proceed as in 1. above. 

In b. and c. below, let us initially 



assume that r 2 is the only record in the 
transaction file whose key is k 2 . 

b. If k, >k 2 , then r 2 does not apply to 
r,, and therefore r 2 must be of "transaction 
type = insert" (otherwise we have an error). 
For this transaction type, all the fields in r 3 
are specified in r 2 , and we proceed as in 2. 
above (except that the special field T="I," 
denotes "transaction type = insert," is 
omitted in r 3 ). 

c. If k, = k 2 , then r 2 applies to r,, and 
there are two subcases. If r 2 is of "trans- 
action type = replace," then we perform 
replacements in r, as directed by r 2 ; set r 3 to 
the result; and advance the current record 
of the third file by 1 . If r 2 is of "transaction 
type - delete," then we do not advance the 
current record of the third file by 1 , since r, 
is to be deleted. In either case, we advance 
the current records of both the first and the 
second files by 1. 

This pattern by which 
false conclusions are 
derived from false hy- 
potheses by means of 
perfectly valid (and 
therefore publishable) 
arguments characterizes 
much of lower-bounds 
analysis. 



If there are several records in the 
transaction file with key k 2 , then these will 
occur in historical order. In this order, a 
replace cannot be followed by an insert; a 
delete can be followed only by an insert; 
and an insert cannot be followed by 
another insert. The final disposition of rj 
may be as in b. or c. above (either subcase), 
depending on whether the last of the 
records with key k 2 is of type "insert," 
"replace," or "delete." The required logic is 
illustrated by the flowchart of Figure 1; the 
steps are as follows. 

1. If k, > k 2 , proceed to step 9; if 
k 2 , proceed to step 14. 

2. We have k, =k 2 (case c. above). Set 
DELETEFLAG = 0. 



3. If r 2 is a replace, then perform the 
replacement in r, as directed by r 2 , and 
proceed to step 1 1 . 

4. If r 2 is an insert, we have an error 
(we are trying to insert a new record whose 
key is the same as that of an existing 
record; we should be replacing rather than 
inserting). 

5. Set DELETEFLAG = 1. (Here r 2 is 
a delete.) 

6. Advance the current record in the 
transaction file by 1. 

7. If the key in the new record of the 
transaction file is unequal to k 2 , proceed to 
step 13. 

8. If the type of the new record is 
anything but "insert," we have an error. (A 
delete can be followed only by an insert.) 

9. The type of the current record is 
"insert." Set DELETEFLAG = 0. 

10. Set r 3 = r 2 (with the special field 
T=**I f M denoting "transaction type - 
insert," omitted). 

1 1. Advance the current record in the 
transaction file by 1. 

1 2. If the key in the new record of the 
transaction file is equal to k 2 , go back to 
step 3. 

13. If DELETEFLAG t 0, go to step 
16. (This tells us that the last record whose 
key is k 2 was a delete, so that r, is to be 
deleted and a new record is not to be 
written on the result file.) 

14. Copy r, into r 3 . 

15. Write r 3 , advancing the result file. 

16. Advance the current record in the 
old sorted file by I. 

In closing, we must note two cautions 
about our sorting method; despite the fact 
that it is fast, it is not universally 
recommended. In the first place, many 
computers (small systems more often than 
large ones) are not used to their full 
capacity. In such a setting, any attempt to 
save computer time makes little sense 
unless it simultaneously makes program- 
ming easier. Also every change to Fj_ j must 
be accompanied by writing a new record 
on the transaction file. The importance of 
this point is that it is quite common for a 
commercial programming system to be 
written by several programmers, so that it 
becomes difficult to identify every place in 
the system at which a change to F|_| is 
made. □ 




40 



CREATIVE COMPUTING 






K 







fife 




m 



jJm— 








Tranquility and Power 



PEARL writes programs. PEARL offers creative programming beyond the confines of the way you've done 
it before. 

PEARL leads you to the quiet of centered creative space. PEARL is a program which writes programs 
in BASIC and is therefore called an application generator. PEARL frees you from the routine work, letting 
you create new programs within the tranquility and power of freedom. PEARL becomes a powerful extension 
of yourself and writes the routine but vitally important portions of every application. Creativity becomes your new way. 

Just as a BASIC compiler frees you from the many decisions of machine language (how to represent 
strings and numbers, I/O details, etc.), PEARL frees you from the many decisions required when writing 
programs in BASIC (designing overall logic flow, menus, details of screen interaction, etc.). For programmers, 
PEARL Levels 2 and 3 provide unlimited creative range. For the nonprogrammer, PEARL Level 1 allows a calm, 
easy approach to generating new software. 

Let PEARL'S power free you to focus on the creative aspects of programming and system design. PEARL 1 
($130), PEARL 2 ($350) and PEARL 3 ($650) require CP/iVT and CBASIC**. PEARL 3 also requires QSORT***. 
Call Ray Stow. Dealer inquiries invited. 



evolutionary software for the 1980s 



CPU International • 503-370-8653 
P.O. Box 12892 • Salem, OR 97301 

CP/M is a trademark o* Digital Research 

«.«^. ««•*-«*»■ mimb . railtn , ~ , ~- *'CB ASIC is a trademark of Software Systems 

CIRCLE 134 ON READER SERVICE CARD -QSORT is a trademark of Structured Systems Group 




Processing problems 



>N0£* 



o* 



•» .. • •••• v 




SC4W 



•* * • 






•»•'•• 



• * 



Apple PIE 



+ 



Formatter 



margins, headers, footers, even form letters, and 

includes a proofing capability. 

These high-quality, cost-effective programs 

come with comprehensive documentation and run 

on a 32K Apple II. They are available through ^ 

your local computer store or direct from 

Programma International, Inc. at the 

introductory price of $79.95*. 

VIDEX VERSION T.M. ^L 

DOUBLE VISION T.M. ^ 

SUPR TERM VERSION T.M. 1 

STANDARD VERSION 
♦December 1, $129.95. 

PROGRAMMA 

3400 Wilshire Boulevard 

Los Angeles, California 90010 




* 



i>f 



Apple PIE (Programma International Editor) 
and FORMAT (text formatter) offer full strength 
solutions to today's word processing problems. 
These versatile, powerful programs provide 
document preparation and word processing 
capabilities previously found only on much larger 
computer systems. 

PIE is a general purpose, full screen editor 
that uses control keys and function buttons to 
provide a full range of editing capabilities such as 
search and replace, delete, copy, insert, move. 
Changes may be made directly anywhere on the 
screen and are shown as they are performed. 

FORMAT uses simple instructions 
embedded in the input text to describe the desired 
appearance of the final document. It handles 
centering, underlining, indenting, page numbering, 



Simple enough for the beginner. Versatile enough for the professional. circle 230 on reader service car 








Systems Analysis and Small Computers 



William R. Feeney 



If your involvement with computers has 
an exact and specifiable goal, this 
article may help you with it. If your 
interests are diffuse and evolving, then 
it may be good for a laugh or two. 



How do you proceed in a project? Do 
your projects look more like the left 
flowchart ( Figure 1 ) or like the right one? If 
your approach to a project tends to be 
haphazard, read on! 

Commercial Computer Projects 

Systems analysts who design and 
build complex computer systems for 
businesses and for other applications have 
been thinking about procedures for 
decades. Their solutions are particularly 
good, since these very same solutions can 
be applied to the less demanding projects 
of the casual computer expert, [less 
demanding? — Ed.] 

Two aspects of commercial computer 
projects are important here, namely the 
sequencing of the tasks and the role of 
documentation in a systems project. 

Designing computer systems is com- 
plex and involves endless detail. Project 
personnel have discovered that tasks are 
accomplished more efficiently and with 
less confusion when a systematic approach 
is used. The favored approach is a common 
sense ordering of tasks arranged into steps 
or phases of a systems analysis. 

Systems analysis, as it is used by 
commercial data processing projects, 
usually includes five phases: 

1. Feasibility Study: This is a quick 
look at the project to determine if it is 
worth doing. 

2. Analysis Phase: Here the project 
team examines the business context of the 
project and performance expectations are 
decided upon. When written up, these are 
called Performance Specifications. 

William R. Feeney, School of Business Administration 
San Diego State University, San Diego, CA 92182. 



START 



C 



1 



START 



Idea 



I 



D 



1 



Buy Computer 



I 



C 



Idea 



Write First 
Program 




I 



) 



( Idea J 

zfz 



Analyze 
Requirement 



Design 
Programs 



Doesn't 
Fit! 



I 




Idea 



Buy More 
RAM 



) 



E_ 



Write Frogs 
Buy Equip. 



Write Next 
Program 



Computer hai 
Wrong Bus 



I 



Debug Syster 
&■. Operate 




Need Special) 
Device / 



T 



End 



Try to 
Trade In 




Computen 
lly Want/ 



I 



Jury Rig 
Bus 



I 



Buy New 
Casette 
Drivpg 



Jury Rig 
Doesn't 

Mnr, 



t 



etc. 



Figure I. 
Which pattern do your projects follow? 



NOVEMBER 1980 



43 



Systems, cont'd. . . 

3. Design Phase: The proposed 
system is divided into separate com- 
ponents. Computer programs and proce- 
dures for the users of the new system are 
developed in this phase. Sometimes a 
hardware system is also designed, but 
frequently the newly designed programs 
can be implemented o»i an existing 
computer system. The Design Specifica- 
tions are written at this time. 

4. Development Phase: The project 
team produces the coding for the computer 
programs and writes up the detailed 
procedures. When necessary, computer 
hardware systems are assembled, installed 
and checked out. The final set of specifica- 
tions, called System Specifications, are 
written at this time. 

5. Operation and Evaluation Phase: 
The project team gets the software, people 
procedures and hardware working in this 
phase. After an initial break-in period, the 
system's performance is evaluated. The 
Performance Specifications from the 
Analysis Phase are compared with the way 
the system actually works and a second 
evaluation is made. If the new system 
works as expected, the project is finished. 
If not, then another iteration, through one 
or more phases, may be in order. 

These five phases, as described here, 
represent just one way of outlining a 
system analysis for a computer project. 
Other words can be used to describe the 
phases, but the sequence of the tasks is 
essentially the same. 

The second important aspect of 
commercial data processing projects is 
documentation. When large sums of 
money are spent on a project, recording 
what has been done is absolutely essential. 

This record is called documentation. 

Documentation Produced During a 
Commercial Computer Project 

During a systems analysis, there are 
four reasons for producing documen- 
tation: 

1 . Documentation forms a permanent 
record of what was done, how the system 
fits together and how it works. This is 
thought of by most people as the only 
reason for documentation. 

2. Documentation acts as a control on 
the project. The order in which documen- 
tation is required during the phases of the 
project helps keep a project sequenced 
correctly. 

3. Written documentation about the 
project keeps everyone on a large project 
team informed about the latest updated 
versions of the system. 

4. Lastly, documentation aids man- 
agement to make judgments about the 
progress of the project. If the documen- 
tation does not reflect expectations, 
management can alter the project or stop it 
altogether. 



The computer hobbyist obviously 
does not have to keep a large project team 
informed of his progress; he or she is 
usually the entire project team! If any 
others are involved in the effort, conver- 
sations are usually sufficient to inform 
them of the latest developments. Also, the 
hobbyist does not need to get management 
approval to continue his project; he is 
management, giving himself the "OK" to 
proceed. 

What the hobbyist often needs, 
though, is guidance in planning the project 
and some advice on what to write down 
about the project for future reference. 

System Analysis Phases for the Hobbyist 

At least four of the phases used in 
commercial data processing projects need 
to be used by the hobbyist. These four 
phases will guide the hobbyist in deciding 
the following: how to design his system's 
software, hardware and procedures 
(design phase), when to write the computer 
programs, when to sketch out the proce- 
dures for using the new system and when to 
build the hardware (development phase). 
Finally, the hobbyist puts the completed 
system into operation and evaluates it 
against the performance he wanted 
originally. 

Before a project can begin, the 



PROJECT START 



Documentation-*^ 

r f\ 



Analysis 
Phase 



Perfor- 
mance 
Descrip, 




Design 
Phase 



Design 
Flan 



Development 
Phase 



Operation & 
Evaluation 
Phase 



System 
as 
Built 



Project 



r 



Ends 

I 



Changes 
to 
System 



Notes about changes 



\ 



may be required on 
earlier Documentation 



J 



Figure 2. 
The Phases and Documentation of a Systems Project 



hobbyist must have a general notion of his 
purpose. This could be as general as 
wanting to buy a computer to play 
electronic games or as detailed as using a 
computer to control every aspect of 
security for his household. 

Here again are the phases, with a more 
detailed description. Figure 2 shows them 
and their accompanying documentation. 

These five phases, as 
described here, repre- 
sent just one way 
of outlining a system 
analysis for a computer 
project. Other words can 
be used to describe the 
phases . . . 

1. Analysis Phase — The hobbyist 
analyzes the constraints acting on him and 
his idea for a new system. How much time 
and money does he have? How knowledge- 
able is he about getting a system running? 
What tools and work space are available to 
him? Once the hobbyist has an accurate 
idea of his constraints, he can correct any 
deficiencies, or, if this is impossible, he can 
alter his project to allow for limitations. 

After examining the constraints, the 
hobbyist can look at the requirements for 
his new system. What does he want the new 
system to do? Do the requirements for the 
new system conflict with the constraints? 
For example, the new system, as originally 
planned, might require a hardcopy 
graphics output. However, the hobbyist 
may not want to spend money for such a 
device. Here, a budget choice conflicts with 
a possible requirement. 

If requirements and constraints 
conflict, they should be resolved before 
proceeding further or they will disrupt the 
project later on. 

It should be pointed out that the 
performance description designates output 
from the system, input to the system, and 
the external performance of the system, 
not a particular brand of hardware or a 
particular programming language capa- 
bility. The performance description should 
provide specifications which will allow the 
use of any one of several microcomputers 
for the project. Normally, a particular 
computer is chosen later in the project for 
cost considerations. The results of the 
analysis phase can be summarized in the 
performance description shown in Figure 
3. 

2. Design Phase — Here the opera- 
tions described in the analysis phase are 
broken into components which will be 
coded as programs or written up as 
procedures for the user. The design of a 
system does not always require new 
hardware to be purchased. When existing 



44 



CREATIVE COMPUTING 



HH^B I \^^m 




SIN(X2),X) 




Surprised? You should 
be. Because until now, no 
software could solve any- 
thing but the most basic 
arithmetic problems without 
a series of complicated 
steps. 

A big disadvantage? If 
you use a microcomputer for 
scientific, educational or en- 
gineering applications, you 
bet it is. That's why Microsoft 
has come up with a solution 
of its own. muMath. 

muMath is a symbolic 
math package you'll recog- 
nize immediately as a major 
advance in microcomputer 
software. 

muMath lets you effi- 
ciently and accurately per- 
form the most complex 
mathematical operations: 
Exact, infinite precision ra- 
tional arithmetic. Unbound 
variables. Complex expres- 
sions (even equations may 
be included). Exact solution 
of algebraic equations. Plus 
logarithmic, exponential and 
trigonometric simplifications 
and transformations. 

That's right. It does in an 
instant what took you years 




to learn at school. Rational 
arithmetic. Algebra. Trigo- 
nometry. Transcendental 
functions. Symbolic differen- 
tiation (including ordinary 
and partial derivatives.) 
Symbolic integration of in- 
definite and definite integrals. 
Matrix arithmetic and 
algebra. 

Trigonometric simplifica- 
tion? But of course. Just type : 



?SIN(2*Y)*(4*COS(X) A 3 
-COS(3*X) + SIN(Y) *COS 
(X+Y+#P1)-COS(X-Y)); 
Then instantly muMath 
returns: 
@4*SIN(Y)*COS(X)*COS(Y). 

Adding fractions? Need 
you ask? 

?1/3+ 5/6+2/5+3/7; 
@41 9/210. 

muMath is written in 
muSIMP, which is included in 
the muMath package. 





10800 NE Eighth 

Suite 819 

Bellevue.WA 98004 

206-455-8080 

Telex 328945 



We set the standard. 



muSIMP is an applicative, 
recursive language, ideal for 
describing complex mathe- 
matical concepts. 

Because of its highly 
interactive nature and hier- 
archical structure, muMATH 
is an excellent math teaching 
device, from simple arith- 
metic to calculus. 

muMATH is currently 
available for the CP/M® 
operating system. 

The complete system, 
including muMATH and 
muSIMP on disk and docu- 
mentation is $250. Runs 
under CP/M. 

Just what you need? We 
thought so. Shoot some 
questions at us about 
muMATH. We have all the 
answers. 

Also new from Micro- 
soft: the muLISP interpreter 
for CP/M. An efficient and 
reliable LISP system fully 
capable of supporting ser- 
ious artificial intelligence 
efforts. $200. 



CP/M is a registered trademark of 
Digital Research. 



CIRCLE 158 ON READER SERVICE CARD 



Systems, cont'd. . . 

hardware cannot support new programs, 
new hardware must, of course, be 
acquired. 

The newly designed programs and 
procedures are typically represented in 
general level flowcharts, descriptions or 
outlines during this phase. These flow- 
charts and other design plans form the 
documentation produced as part of the 
Design Plan shown in Figure 3. 

Up to this point, hardware is not 



required for the design of the project. The 
first two phases of a Systems Analysis 
involve planning and design. Only when 
this is done, does hardware become part of 
the project. 

3. Development Phase — The Design 
Plan is used as the basis for the programs 
written during this phase and for the 
detailed procedures write-up. Further, if 
new hardware is required, it is assembled, 
connected and debugged at this time. 

Most of the time required for a 



Analysis 
Phase 



Design 
Phase 



>z* 



PERFORMANCE DESCRIPTION — Describes performance of 
new system in terms of input to system and output 
from system. 

1. General Statement --Tells idea of system in para- 
graph form, what it will do, how it will perform. 

2. Document Flowchart —Shows flow of any documents 
output from system (CRT displays, printouts and 
other outputs) and information input into system 
(data sheets and other inputs). 

3. System Output —Describes and sketches each kind 
of output display and document down to single 
line or entry level. 

h. System Input —Describes and sketches each kind of 
input including documents down to single line or 
entry level. 

5. System Flowchart —Shows over all working of new 
system including inputs, outputs, computer 
programs (general level) and people procedures. 



Develop 
Phase 




DESIGN PLAN— Describes design of new system in terms 
of detailed computer programs (descriptions or 
flowcharts) and pfcople procedures processing the 
inputs to produce the outputs. 

1. System Flowchart — If necessary update System 
Flowchart from Performance Description to change 
it or add more detail. 

2. Layouts of Documents, Displays and Storage — Sketch 
detailed layouts for input, output and data storage 
using computer forms or grid paper. 

3. Hardware Choice — Examine system Performance 
Description and Layouts to determine best hardware, 
if hardware is to be acquired. Cost, availability, 
and User capability are other important factors. 

^. Program Flowchart or Description — Shows detailed 
computer procedures for program(s) required by new 
system. Computer code will be written from this 
flowchart or description. 

5. User Procedures — Describes any special tasks which 
system user must perform. User Procedures are 
frequently omitted from simple system plans. 



SYSTEM AS BUILT— Describes finished system's 

hardware, programs, input, output and procedures. 
This forms record of finished system. 

1. Hardware configuration — Describes hardware in 
sketches and words. Information on all units 
and custom boards should be included. Vendor 
catalogs, specification sheets, magazine articles, 
and hand written notes are important. Catalogs, 
etc. may be put into special section of completed 
documentation following this section. 

2. Examples of Inputs and Outputs — Descriptions of 
inputs, outputs, photos or sketches of CRT output, 
should be included. 

3- Program Listing — This includes printed program 
listings of the latest versions of programs. 

h. Notes — Any sketches, notes, calculations, etc. 
made during the building and debugging of system 
should be put here. 



Figure 3. 
Details of the documentation produced at the phases of a project. 



project, and a majority of the money spent 
on a project, is used during the develop- 
ment phase. In commercial projects, it is 
not unusual to have the development phase 
take 60% of the funds and time for the 
project. 

The Development Phase finishes with 
the "System as Built" documentation. This 
is a description of the completed system, 
including detailed program flowcharts (if 
they exist), program listings, and hardware 
descriptions (see Figure 3). 

4. Operation and Evaluation Phase 
This is where the new system is put "on- 
line." Debugging not previously accom- 
plished during the Development Phase is 
done now. The new system should be fully 
operational before it is evaluated. 

The evaluation of the new system 
requires a critical comparison between the 
Performance Description and the actual 
operation of the new system. If differences 
exist, are they desirable? Is another 
iteration through the Design Phase 
required to make the system work 
properly? 

These four phases are not always 
clearly defined. In actual practice, the 
phases frequently merge together with less 
obvious boundaries. It is rare, though, that 
a phase is completely omitted. It is not 
uncommon, even in commercial projects, 
to return to one of the earlier phases when 
it appears that the project will not 
accomplish its objectives. 



Documentation for the Hobbyist 

When the new system is working as 
desired and program listings and example 
inputs and outputs have been collected, the 
documentation can be finalized. The 
"System as Built" documentation de- 
scribes all the items for the completed 
system. Catalogs, hardware specification 
sheets, magazine articles which may have 
helped in putting the hardware together, 
sketches and handwritten notes used 
during the building and debugging of the 
system should be included. 

All of this collected information, as 
well as the Performance Description and 
Design Plan, can then be put into a large 
notebook. Figure 4 shows how all of the 
documentation can be assembled into a 
single volume. This volume forms the 
complete documentation of the project, 
from its beginnings to the detailed 
description of the finished system. It is 
used to plan extensions to the system, to 
aid in maintaining the new system, to help 
explain your system to others or just to 
look impressive sitting on your bookshelf! 

As you make changes to your system, 
notes about these changes can be added to 
the back of the volume to keep the docu- 
mentation up to date. Extensive changes 
may require notes on earlier documenta- 
tion in order to keep system records 
current. 



46 



CREATIVE COMPUTING 














^^fjp^ 







#..f. i .iii.i 



<*<*S 



*g* »- 



■F 



At $7951 how tough can 
these new Tigers be? 



Introducing the new Paper Tiger™ 
445 with the most rugged printing 
mechanism ever put in a low-cost 
matrix printer. 

The 445 comes with a reliable ballis- 
tic-type print head and an advanced 
cartridge ribbon that lasts four times 
longer than many cassette or spool 
ribbons. Two separate heavy duty 
motors drive the print head 
and advance the paper. Plus you get 
true tractor paper feed. 

And the new 445 gives you the per- 
formance you expect from the Paper 
Tiger family of printers . You can soft- 
ware-select character sizes, print 
80- and 132-column formats, adjust 
paper width and length, even gen- 
erate six-part business forms. All at 
unidirectional print speeds to 198 
characters per second. 



Need more stripes? Specify DotPlot™ 
a sophisticated raster graphics option. 

If you've got an Apple**, TRS-80*** 
or other personal computer, get your 
paws on the tough new Paper Tiger™ 
445 from IDS. 

The people who invented low-cost 
matrix printing just growled. 

Call TOLL FREE 800-258-1386 (in 
New Hampshire, Alaska and Hawaii, 
call 603-673-9100.) ims^Hn 
Or write: 
Integral Data 
Systems, Inc. , 
Milford, New 
Hampshire 
03055. 







Tiger 445 



Integral Data Systems, Inc. 




CIRCLE 207 ON READER SERVICE CARD 



Mountain Co: 



uter 



can now 




Your Apple II Peripheral Capacity 

EXPANSION CHASSIS 



Quality You Expect 

Eight more slots for your Apple! Now you 
can bank-select eight more peripheral slots 
with immediate or deferred software 
commands— like having up to 16 peripheral 
cards "on line"— or use the Select/Deselect 
switch mounted on the front panel. 
Expansion Chassis' heavy-duty power 
supply is primarily for peripherals, without 
the heavy demand of motherboard support 
chips required in your Apple. This means 
much more power is available for peri- 
pherals than in your Apple itself! If you've 
run out of room in your Apple — Expansion 
Chassis is your answer. Drop by your Apple 
dealer for a demonstration, or contact 
Mountain Computer for the location of 
the dealer nearest you. 



Performance You Demand 

• Eight mirror image I/O slots of the Apple 

• Fully buffered, bi-directional data lines 

• Apple II compatible interface card 

• Dual selection capability; hardware or 
software 

• Immediate or deferred selection in 
software mode 

• From BASIC, a single POKE command 
turns the chassis ON or OFF 

• Compatible with all software 

• Dedicated power supply with 
approved power transformer 

M Mountain Computer 

^K INCORPORATED 



300 Harvey West Blvd., Santa Cruz, CA 95060 
(408) 429-8600 TWX 910 598-4504 




CIRCLE 191 ON READER SERVICE CARD 



48 



CREATIVE COMPUTING 



Systems, cont'd. . . 



4. Program Flowchart 



REQUEST GAME 



Change #3 



Change #? 



Change #1 



Catalogs, Spec 
Sheets, Notes 



System as 
Built 



Design Plan 



Performance 
Description 



A 



Randomize 



Instructns 
for Game 



G> 



Maximum 
Range 



Figure 4. 
AH of the documentation developed during the four phases of the project, 
catalogs, specification sheets, handwritten notes and changes to the system after it 
is operational can be put into a single file or loose leaf notebook as the complete 
documentation on the system. 



A Gunner's Game 

PERFORMANCE DESCRIPTION 

1. General Statement — Want to write a program for a game to 
simulate shooting at a target with a cannon. For the first 
version of the program only the elevation of the gun will 
vary. If the gunner takes more than 5 shots to hit a target, 
the gunner and his cannon are destroyed by the enemy. The 
terrain is assumed to be flat. 

2. Document Flowchart —No input data documents will be used for 
this program. Only CRT output displays will be used in 
playing the game. No permanent data documents will be 
generated by this program. 

3« System Output —Besides game instructions to the user, the 
output CRT displays will tell the user if his shots go over 
the target, are short of the target or hit the target. 

^. System Input —The only user input will be the elevation of 
the gun in degrees. 

5. System Flowchart — 

START 





4 Tar=0 




i » 




TotShts=0 


rr\ 






KiJ 


•\* 




TarUist= 

1*3000-30000 
♦r:jd(x) 




«' 




Sht»0 



I 



Distance 

to Target 





Instructns 
for Game 
Printed _ 



Yes 



Program 
Gives 
Distance 





Distance & 
Direction 
of Mis 



Figure 5. 
Example Documentation Produced for a Simple Game Program. 



Example Documentation 

Example documentation for a small 
game program is shown in Figure 5. The 
illustrated documentation is typed and the 
flowcharts are carefully drawn to make the 
pages easier to read. However, when doing 
your documentation, spend only reason- 
able time on neatness. Readable, hand 
written documentation and freehand 
flowcharts are adequate. 

In this short example, the hardware is 
assumed to be on hand and in working 
order. No changes have been made in the 
original system, and no catalogs, specifica- 
tion sheets or other notes have been 
included. For further understanding, 
match the example against the general 
description of the documentation. 



NOVEMBER 1980 



49 



Systems, cont'd. . . 

Summary 

There is a real payoff in time, effort 
and money saved by having a plan of how 
to proceed in doing a complex project. The 
four phases of Analysis, Design, Develop- 
ment and Operation/ Evaluation provide 
such a plan. 

The three major sections of documen- 
tation, Performance Description, Design 
Plan and System as Built, flow naturally 
from the four phases. If you develop this 
documentation as you proceed through a 
project, it will help you to maintain control 
and provide you with a complete written 
record of your project at completion. 

Does it work? You bet! Systems 
Analysts have been doing it successfully 
for years. d 



DESIGN PLAN 

1. System Flowchart — Flowchart shown in the Performance 
Description does not need updating. 

2. Layouts of Documents. Displays and Storage -- 
Input i no layouts req'd. 
Output * A THIS COMPUTER PROGRAM SIMULATES THE 

RESULTS OF FIRING A FIELD ARTILLERY WEAPON. 



Instructns' 
(printed 
only once< 
at begin- 
ning) 



YOU ARE THE OFFICER-IN-CHARGE, GIVING ORDERS TO THE 
GUN CREW, TELLING THEM THE DEGREES OF ELEVATION YOU 
ESTIMATE WILL PLACE THE PROJECTILE ON TARGET. A 
HIT WITHIN 100 YARDS OF THE TARGET WILL DESTROY IT. 
TAKE MORE THAN 5 SHOTS, AND THE ENEMY WILL DESTROY 
YOU! 



Target 
Info. 



MAXIMUM RANGE OF YOUR GUN IS ^6500 YARDS." 
^"DISTANCE TO THE TARGET IS 99999 YARDS." 



Feedback ("SHORT OF TARGET BY 9999 YARDS." 
from shot* or 

'"OVER TAR 5." 

or 
"♦♦♦TARGET DESTROYED*** 99 ROUNDS OF AMMO EXPENDED." 



G> 



9 



Sht=Sht+l 




yes 



no 



30 CK! 

Gun 
Destroy**- 




3EEF! 



Go Back to 
Gunnery 
Schoo] 




Request /"ELEVATION :?' 



for Input 



Next 
game 



I 



"THE FORWARD OBSERVER HAS SIGHTED MORE ENEMY ACTIVITY. 
DISTANCE TO ...(see Target Info.) 



Calculate 
Distance of 
Shot 



Storage layout i none req'd. No file records or matices used. 

3. Hardware — All of the most common microcomputers will run 
the program. At least 4K of RAM is required along with 
either a casette or floppy drive. 

**• Program Flowchart or Description — see next page. 

5. User Procedures — No special procedures are required for 
the running of this program. 




Shell Hit 
Short 



Target 
Destroyed 



Shell Hit 
Over Tar 




BEEF! 




'otShts= 
TotShts* 
Sht 




#Tar- 



> #Tar* 1 



Total 
Rounds 
Exoended 



Forward 
Cbserver 
Sigh- 




Nice 
Shootine 



SYSTEM AS BUILT 

1. Hardware Gonf iguration --The game was 

implemented on my machine, a Sol 20 with l6K 
of RAM, cassettes, CRT and printer. 

2. Examples of Inputs and Outputs — 

THIS COMPUTER PRQGRRM SIMULRTES THE 
RESULTS DF FIRING R FIELD RRTIlLERY MERPON. 

you rre the off user- in-chrrge. giving order: td the 
sum crew* telling them the degrees df elevrtion you 
estimrte mill flrce the projectile on thrget. r 
hit mithin 100 yrrds of the thrget mill destroy it. 
trke more thrn 5 shots. rnd the enemy mill destroy you. 

'*RXIMUM RRNGE OF YOUR GUN IS 4G50 YRRDS. 

DISTANCE TO THE TRRGET IS £3675 YRRDS... 

ELEVRTION:? £0 

OVER TRRGET BY *,51? YRPD1. 

ELEVRTION:" 15 

SHORT OF TRRGET BY 4i6 YRRDS. 

ELEVRTION:? 15.3 

♦♦♦TRRGET DESTROYED^^ 3 POUNDS OF RMN0 EXPENDED 

THE FORMRRD OBSERVER HRS SIGHTED MORE ENEMY RCTIVITY. 
DISTRNCE TO THE TRRGET IS 17053 YRRDS 



ELEVRTION:" 10 

SHORT OF TRRGET BY 1150 YARDS 

ELEVRTION:" 11 

OVER TRRGET BY 365 YRRDZ. 



ELEVRTION:" 10.3 
♦♦♦TRRGET DESTROYED 



3 ROUNDS OF RMMO EXPENDED 



3EE?! 




THE FOPURRD OBSERVER HRS SIGHTED MORE ENEMY RCTIVITY. 
DISTRNCE TO THE TRRGET IS 31c:43 YARDS 



ELEVRTION:" £5 

OVER TRRGET BY 4377 YARDS. 

ELEVRTION:' SO 

SHORT OF TRRGET BY 1355 YRRD: 



50 



CREATIVE COMPUTING 



ELEVHTIDN: ? il 

IHDPT DF THRGET BY 130 YRPH 



elevrtidn: ? 31.1 
►thpset destroyed 



-4- POUNDS DF ftMHO EXPENDED 

THE FDPUHPD DBIEPVEP Km! IH5HTED MDPE ENEMY RCTIVITY. 
DISTANCE TD THE THPGET IS 25980 YRPDi 



ELEVHTIDN:* 17 
•-^♦ThPhET BESTPDYEIh 



1 POUNDS OF RMMO EXPENDED 



NEWfrom 



3. Program Li sting- - 



10 

?0 

100 

110 

120 

1 3 

14-0 

150 

1 6< 

170 

175 

1 3 

135 

130 

135 

c 

210 

220 

3 SO 
340 
250 
c. 3 
£7 
33 
330 
? 
S 1 
320 
S3 3 
SS.5 

':'■ ':'■ 
S 4- 
S45 
S5 
:• ■;• 
S 7 
S 3 
S 3 

4 
410 
43 

4 :■ 
44u 

oa£ 

444 
J-45 

44* 
45 
43 

47 

48 
43 
431 

5 
505 
3 
310 



3HMES BY DEC 



PEN PPOGPHM FPON 101 F3S I 
PRNDOMIZE 
PPINT THIS COMPUTEP PP03FHN IINULHTES THE ' 

RESULTS OF FIRING m FIELD HPTILLEPY MEHPON. 



YOU RRE THE OFF ICEP-I N-CHHP3E. GIVING OPDEPS TO THE' 
GUN lPEM. TELLING THEN THE DEGPEES OF ELEVHTION YOH- 
ESTIMHTE MILL PLftCE THE PROJECTILE ON TRPGET. H 
HIT WITHIN 100 YmPDS OF THE TRPGET MILL DESTK-OY IT. 

thke nope thhn 5 :hot:. hnd the eneny mill destpoy you, 

NHXINUN PhNGE OF YOUP GUN IS 435 00 YRPDS. 



one degpee. •■ 



PPINT 

PPINT 

PPINT 

PPINT 

PPINT 

PPINT 

PPINT 

PPINT 

PPINT 

Z m Q 

PPINT 

s 1 = 

LET T=43000-SOOOO*PND ' X) 

LET 3=0 

GOTO 57 

PPINT 'MINIMUM ELEVHTION OF GUN I 

GOTO S30 

PPINT MHXIMUM ELEVHTION OF GUN II 33 DEGPEES. 

GDTDS30 

PPINT OVER TRPGET BY : HB S >£• '• YRPDS . 

GOTO 330 

PPINT IHDPT OF TRPGET 91 '! HBS • E * I YRPD S . 

GOTO S30 

GOTO S3 

PPINT ♦♦♦TRPGET DESTROYED*** IS J POUNDS OF RMMO EXPENDED 

80 SUB 30 

s i = s i ♦ : 

IF 1=4 THEN 430 

1=1 + 1 

PPINT 

PPINT THE FOPMRPD OBSERVER HRI SIGHTED MOPE ENEMY RCTIVITY. 

8QTO2O0 

PPINT DISTRNCE TO THE TRPGET I : i INT • T • : YRPDS . . . 

PPINT 

PPINT 

PPINT ELEVRTION: -; 

INPUT B 

IF B>33 THEN 35 

IF B 1 THEN 3 SO 

: = :>i 

IF S3 THEN 45 

PPINT PPINT BOOM!!! YOU HR'-E JUST BEEN DESTROYED '* 

80 SUB 3 00 

PPINT "Br THE ENEMY PP1 NT ^ PP INT s GOTO 495 

B3=3^B 57. 3 I«48500*S IN' B3 • :: = T-I E = INT ■ 

IF RBS 'E • < 100 THEN SI 

IF E. 1 THEN 390 

IF E -100 THEN 370 

PPINT-PPINT PPINT TOTRL POUNDS EXPENDED MEPE 1 3 1 

IF :i 15 THEN 435 PPINT NICE SHOOTING! I GOSUB 300 GOT0500 

PPINT BETTEP GO BRCK TO FOPT MILL FOP REFRESHER TPRINING!' 

PPINT-PPINT THRNk YOU FDP PLRYING!' 

PPINT PRINT TRY RGRIN -PRINT GOTO 130 

FOR N=l TO 10 PRINT CHR$ <7> >\N€XT N 

RETURN 

END 



Wiley's popular 
paperback line 



USING 



ASafCJGMNGOJDf 



M* H "WNANK2 
(MHASHUY 



Ml 






OOOO OO O O 




"It can't actually think, but when it 

makes a mistake, it can put the blame ©creative computing 

on some other computer. " 



NOVEMBER 1980 



51 



USING CP/M 

Judi N. Fernandez & Ruth Ashley 

This detailed, self-paced introduction to Control 

Program/ Microcomputers— the most widely used 

microcomputer operating system— lets you use 

CP/ M to get maximum capability and efficiency from 

your micro. 

"A marvelous addition to the CP/ M literature. ... I only 

wish that I had had the book when I was starting out!" 

—Alan R. Miller, New Mexico Tech and Software 

Editor, Interface Age 

471 0801 1-X Sept. 1980 approx. 320 pp. $8.95 

BACKGROUND MATH FOR A 

COMPUTER WORLD, 2nd Ed. 

Ruth Ashley in consultation with Nancy B. Stern 
Here are all the basic mathematical techniques, 
concepts, and facts you need for productive, intelli- 
gent interaction with your computer using any 
computer language. The new edition of this popular 
manual includes an entirely new chapter on 
trigonometry. 
47108086-1 1980 308 pp. $7.95 

WHY DO YOU NEED A PERSONAL 
COMPUTER? 

Lance A. Leventhal & Irvin Stafford 
Whether you're considering buying a personal 
computer or already own one, this is the book for 
you! Both consumer handbook and practical 
manual, it's more comprehensive, detailed, and up- 
to-date than any other work of its kind. It includes 
sensible guidelines on the advantages and 
drawbacks of each model, plus technical advice and 
sources of equipment and information. Find out how 
to use the personal computer to manage your 
finances, analyze stock market trends, serve as 
appliance controllers, much more! 
471 04784-8 Nov 1980 approx. 320 pp. $8.95 

FORTRAN IV, 2nd Ed. 

Jehosua Friedmann, Philip Greenberg, & 
Alan M. Hoffberg 

A revolutionary new edition of the standard 
FORTRAN guide— now heavily oriented to personal 
computers. You'll start writing basic FORTRAN 
immediately, then progress smoothly to standard 
extensions and advanced options. Whether you use 
FORTRAN 77 or FORTRAN IV, the authors clarify the 
differences— with comparative tables— so you can 
follow whichever version is right for your machine. 
Users of mainframe computers will also find the book 
totally applicable. 
471 07771-2 Oct. 1980 approx. 452 pp. $8.95 

TRS-80 BASIC 

Bob Albrecht, Don Inman, & Ramon Zamora 
Packed with games, graphics, and practical applica- 
tions, this eagerly awaited guide leads you step by 
step to maximum use and enjoyment of your new 
TRS-80. 

"The book is OUTSTANDING and is perfect for all 
LEVEL II owners. . . . Geared toward the beginner, 
but does contain a wealth of information for more 
advanced programmers. . . . TRS-80 BASIC is the best 
thing to happen to LEVEL II owners!" 
—Computronics Monthly News Magazine 
47106466-1 1980 351pp. $8.95 

JOHN WILEY & SONS, Inc. 

605 Third Avenue, New York, NY. 10158 
In Canada: 22 Worcester Road, Rexdale, Ontario 
Wiley Self-Teaching Guides also teach COBOL, Job Control Language, 
Flowcharting, and other computer skills. Look for them at your favorite 
bookshop or computer store, or send your check (including state sales tax) 
to PamByers, Dept. 1-7152 

Prices subject to change without notice 

CIRCLE 249 ON READER SERVICE CARD 



sksisjil: 



ASafWCHMGOJK 



m 



•«• 



rTmJP{#KcNffwG 
MANMHOntBK 




® 



The Bleak Future 
of Small-Business 
Computing 



Paul F. Doering 

Beware of predictions when experts 
agree. Opinions aside, Titanics do sink and 
swine flu epidemics fail to materialize. 
Today's "everybody-knows-it" is that the 
golden age of small-business computing is 
nearly upon us. Rubbish. We're on the 
threshold of unprecedented confusion. 

"Small-business computing" is the use 
of cheap, dedicated computers to auto- 
mate the recordkeeping of companies with 
low dollar volume and few employees. 
Numbers for low and few vary with the 
user, but let's include Bertie's Button 
Boutique and exclude Chrysler. 

The Problem 

Writers and lecturers tell us that the 
availability of modestly priced systems 
makes it practical for small companies to 
rely on computers for accounting, freeing 
people to concentrate on managing. 
Sounds neat, eh? 

The problem is that the accounting is 
the managing. Once you've got all those 
figures for factors like inventory, receiv- 
ables, payables, and profit projections, 
management consists of doing what the 
bottom line demands. Oh yes, managers 
also hire help, select product lines, and 
decorate showrooms; but it's ignorance of 
that bottom line that leads to failure. That 
golden era we're approaching is actually 
one of automated ignorance. 

The Timebomb 

You see, it's the word "cheap" that 
represents the timebomb. The $5,000 disk- 
based computers are really good values. A 
competent commercial programmer 
(humor me and accept the abbreviation 
CCP) can convert them into systems from 
the experts' dreams. Most systems will be 
programmed instead by kitchen-table 
amateurs (KTA's). 

The CCP recognizes that systems 

Paul F. Doering. 56 Elmore Road. Rochester, NY 
I46IS. 




must be maintained. He prices his product 
to allow revisions whenever the govern- 
ments change their reporting rules. He 
incorporates the true cost of money in his 
projections. He includes automatic file 
backup. He keeps an audit trail. He alters a 
record only after confirming the validity of 
the new item. He offers editing for data 
entry. He tailors the prompting messages 

Opinions aside, Titanics 
do sink and swine flu epi- 
demics fail to materialize. 

to the operator's level. He generates paper 
records as a basis for manual accounting 
during unscheduled downtime. He docu- 
ments exhaustively. These features and 
others all add to the initial cost of the 
CCP's product. 

The KTA overlooks some of these 
niceties. It's enough for him that his 
inventory program calculate the number of 
marshmallows on hand. His program is 
cheap. Tick, tick, tick. 

The Mad Bomber 

There is no practical limit to the 
supply of bad programs, because our 
hobby is spawning a large cottage industry. 
I know a few programmers who genuinely 
promote computing. They conscientiously 
develop tight, fast, reliable packages which 
meet the user's expectations. These careful 
programmers are uncommon. 

Many programs sold today are coded 
quickly, loosely, and carelessly. There is 
only superficial testing. No one confirms 
that every loop has been tried, every 
meaningful data mix injected. No one 
traces the calculations for possible loss of 
numeric significance. If it works once, it 
must be okay. Anyway, selling a few copies 
will yield enough money to buy a printer to 
check the coding. 

Much of what gets published in 
computerist magazines promotes this 



52 



attitude. It is tempting, isn't it? Form a 
company with a fancy name, sell a 
program, write off your equipment as a 
business expense, get rich. Everyone's 
doing it. Then you find out that the bottom 
has fallen out of the games market, so you 
turn to the next touted mother lode: small 
business. You borrow a book on account- 
ing, dash off an implementation of your 
untested understanding, and rush to 
advertise. We'd all be horrified if anyone 
did that with a drug or a vehicle, but it's far 
more common in programming than you 
believe. Is injuring the means of someone's 
livelihood less reprehensible than injuring 
his body? 

The Odds 

Do you doubt that there are more bad 
programs than good ones? Look at what 
happened to radio discipline when CB 
became a toy. That's what is going on 
today in programming. Many suppliers 
teach programming. Very few stress 
responsibility and the need for self- 
discipline. With a stream of questionable 
programs reaching the marketplace, the 
chances of choosing a dangerous package 
are disturbingly high. The ratio of KTA's 
to CCP's is topheavy. 

Who will warn the potential victim? 
Probably no one. If Bertie of button fame 
knows enough about the financial end of 
his business, he may cut through the 
mystique and be hardnosed about his 
specifications. He may ask about updates, 
fixes, revisions, warranty, and a mainte- 
nance contract. But if Bertie knows only 
buttons, he's apt to believe what he's told 
about small-business computing. Mostly, 
he's not hearing the whole truth. 

The Consequences 

Let's be fair. The manager intelligent 
enough to see the merit in the extra cost for 
the CCP's product will benefit and 
prosper. He probably would prosper in 
any case; the computer will merely enhance 
the prospects for success. 

CREATIVE COMPUTING 



Now, you may object that a business 
run by someone ignorant of sound 
practices will fail anyway. Perhaps, but the 
computer is being promoted as insurance 
against such ignorance. Read the ads. The 
CCP and the KTA are making similar 
claims. Both promise to automate a crucial 
aspect of the enterprise. Neither lists the 
features omitted. Neither specifies what 



The CCP and the KTA are 
making similar claims. 
Both promise to auto- 
mate a crucial aspect of 
the enterprise. 

supplementary manual effort is required or 
what minimum knowledge the user must 
possess. The result of a wrong choice is that 
the wasted investment in the KTA's system 
will hasten the failure of the weak business. 
Yet where do we read that the coming of 
small-business computing will boost the 
failure rate? 

I wish I could tell you that the solution 
lies in buying software from the major 
hardware vendors. Sadly, some of them 
apparently employ their own KTA's. As an 
example, a mailing list program from a 
leading personal computer manufacturer 
takes 30 hours to sort a list of 150 names 
and addresses. I know a CCP whose 
version in the same Basic takes only 55 
seconds. 

How many small businesses could 
tolerate the day-long loss of inventory-, 
ordering-, and accounting-capabilities just 
to update a mailing list? Guess what? The 
major vendor's software specifications 
don't mention this problem. Furthermore, 
if you trigger this sort, you'll have no clue 
about how the routine is progressing or 
when you might expect to get your system 
back. 

Slothful performance has one benign 
aspect: the user can detect it. It may 
disquality that particular system, but at 
least it's not fatal. 

Sloppy data-handling, though, is a 
disaster. I've seen a program that can't 
abide a key's being struck during a file 
update. The consequence of such an 
innocent act is the substitution of that key's 
value for the one then being moved. 
There's no warning; the file is contam- 
inated and accepted. That is a program's 
ultimate transgression. 

If the manager is lucky, he will notice 
that an item makes no sense. Whether he 
will then be able to correct it is still an open 
question. Should the substitution go 
undetected, the timebomb has been armed 
and started. The computer may later order 
a wrong item, misaddress a shipment, 
report erroneous FICA data, overpay a 
supplier, underbill a customer, or erase the 
disk. Even a capable manager could lose a 
business with that kind of help. 

NOVEMBER 1980 



Before you laugh, how does your 
system handle that situation? How do you 
know? 

The Remedies 

What recourse is open to the person 
whose business dies from contaminated 
data? Perhaps he can sue the KTA, but 
with what real hope of getting remunera- 
tion? Many KTA's are at least clever 
enough to include disclaimers about 
fitness, merchantability, and nonrespon- 
sibility for consequential damages. Realis- 
tically, there are no after-the-fact remedies. 

Are there any safeguards for the 
prudent buyer? I usually offer this personal 
advice: 

It's often wiser to buy your cheap 
computer from someone scaling his 
computers down, rather than up. I think 
your chances of success are better if you 
pay more to IBM than if you pay less to a 
fledgling concern known for TV games or 
calculators. 

Never discontinue your manual 
practices until your computer has demon- 
strated that it can do as well. Run the 
manual and the automated operations in 
parallel for a while. 

Ditch the computer if it doesn't 
perform from the beginning. Your initial 
dissatisfaction arises from only the bugs 
you've been able to detect. If obvious 
things are going wrong, don't risk 
assassination by the hidden bugs. 



k 



Never buy a computer package 
without first interviewing experienced 
customers. Talk to the computer operator 
as well as the company owner. Don't rely 
on hearsay testimonials. Remember that 
you're in an adversary relationship with 
the salesman. It's like buying a car. 

Don't expect the system to compen- 
sate for your own ignorance. How will you 
know if it's working? 

Remember that you're in 
an adversary relationship 
with the salesman. It's 
like buying a car. 

Find out whether the vendor is using 
this system in his own operations. It's no 
guarantee, but it's a devastating question 
to spring on the salesman. 

The Prospect 

Too few managers will demand 
rigorous proof of performance before 
committing their company's well-being to 
a computer system. We who relish the 
beneficial impact of computers on man- 
kind will sustain bruises during the coming 
wave of disillusionment, as small-business 
computing too often betrays its promise. 

You can lessen the blow by speaking 
out on the need for responsibility in 
programming. □ 



"Every few decades an 
unknown author brings out 
a book of such depth, clar- 
ity, range, wit, beauty and 
originality that it is recog- 
nized at once as a major lit- 
erary event. This is such a 

WOrk." —MARTIN GARDNER, 

Scientific American 

"A triumph of cleverness." 

—Parabola 

"A brilliant, creative and 
very personal synthesis." 

—Mathematics Magazine 

$8.95, now in paperback, 
at your bookstore 

vintage _.„. 

BOOKS 

A division of Random \ louse 



CIRCLE 246 ON READER SERVICE CARD 



53 




Stan Gets 
Re-Randomized 









This 


is the Stan Story 


to 


end them all. 


Yup 


that's a 


promise 


— 


I can't Stan 


them 


either. 


But it's 


a 


fun war to 


learn. 








— Ed. 



"Say, Stan, come on into the den for a 
while. I want to show you something," 
Stan's father said as they were getting up 
from the dinner table one evening. "It's 
about that program we developed back in 
February to study the probabilities from 
rolling dice." 

"That sounds interesting. Can I come 
and listen too?" his mother asked. 

"Sure, Mom. Then, after we're done, 
I'll help you with the dishes." 

"!!!" 

As they were walking into the den, his 
father started to explain. "You see, son, I 
was looking at the probabilities you 
produced with your program. While they 
were correct, something bothered me 
about them. Why would the total of the 
wins and the losses on 180 rolls of the dice 
also be 180? Some of the rolls are neither 
winners nor losers in a real game. For 
example, if I roll a 4 and then a 9, that 9 
doesn't win or lose. Since I'm looking to 
roll another 4 to win or a 7 (I hope not) in 
which case I lose, the 9 is just a wasted roll. 
Actually, anything other than a 4 or a 7 is 
wasted." 

They were in the den now, and while 
Stan turned on the computer and got the 
program ready, his Dad continued, "In a 
real craps game, you would expect some of 
the rolls to be wasted like that. Therefore, 
you would expect less than 1 80 for the total 
of winners plus losers. Don't load that 
copy of the program. I have another copy 
I've made some changes to, and I want to 
show you what happens." 

Stan stepped aside to let his father 
load his own copy of the program. 

"Tell me what your program used to 
do while Dad is loading his," Stan's mother 
said. 

David Kat/. 1526 Empress Ave., Saskatoon, Sask., 
Canada. S7K 3G3. 



David Katz 

"Well, Pop was trying to write a 
program that would simulate the rolling of 
dice. And he didn't think that the patterns 
he got from the random number generator 
were very good. So I decided to load a one- 
dimensional array of 36 elements with the 
values from 2 to 1 2 in the same proportions 
that would show up from the dice. There 
was one 2, two 3's, and so on. Then, in 
order to generate a roll of the dice, I would 
generate a random number between I and 
36 and use that to choose one of the 
possible rolls. I remove that number from 
the list and next time generate a number 
between 1 and 35. By doing that, the 
program produces rolls for the dice which 
exactly match the probabilities one would 
predict." 

"Do you mean that you do it like 
dealing a deck of cards where you take the 
value out and don't replace it?" 

"Yeah. That is exactly how I described 
it to Dad, only he said that one set of rolls 
wasn't enough, so I wrote another program 
to do exactly the same thing — only it had 
five times as many values. The list was 180 
numbers long." 

"But the numbers you generated 
weren't stochastically independent!" 

"Huh! What is that?" 

"Well . . . Let me try to explain it this 
way. Suppose we take the example in 
which you were using only 36 rolls. Now, 
the combination for boxcars (two 6's) only 
has a probability of 1 in 36 of occurring, so 
it is only given once in your list. Right?" 

"Yup." 

"So, if the first number I roll is 12, 
then it gets removed from the list and I 
can't roll it again, at least for the next 35 
rolls. Right?" 

". . . uh, I think I can see what you are 
getting at. There is nothing in real dice that 
says you can't roll another 12 right away. 
But I took care of that when I had the list 
with 180 values. With that, you could roll 
another 12 on your next roll and nothing 
would be wrong with that." 



"True, but nothing in the dice 
themselves says that I couldn't roll six 12's 
in a row either." 

"But my program would only allow 
you to roll five 12'sat the most. OH-OH!" 

"Right. Dice are stochastically inde- 
pendent. That means that whatever 
happens on any roll is not influenced by 
any previous roll and will not affect what 
you get on any other roll." 

"But the numbers that Dad was 
getting from his program didn't look very 
much like the kind of results you would get 
from a pair of dice either." 

"Do you have a print out of those 
numbers around?" 

"Over there — on top of that pile. I 
ran off a copy of his results before I started 
playing with the program." 

By now Stan's father had his program 
listed and was ready to run it, so both Stan 
and Mom waited for him to explain what 
he had written. 

"Take a look at what I did here before 
I run the program. I changed your 
program a bit, so that instead of generat- 
ing a random number in lines 530 to 540, I 
take the counter that you use in line 120 to 
decide if another random number is 
needed and subtract it from 181. Then I use 
that instead of the random number. You 
can see that the rest of the program hasn't 
been changed at all." 

"Okay." 

"Now then, let's run this new version." 
The whole family stood bathing in the glow 
of the display for a few minutes while the 
program ran, and pretty soon . . . 

"Heh! Those are exactly the same 
numbers I got with my random number 
generator. But you aren't using random 
numbers." 

It was about this time that Stan's 
mother picked up the hand calculator and 
wandered over to the small desk in the 
corner of the room. 

"That's right. Son. Your program 
didn't take into account successive rolls 
after a point was made, so you were 
counting the results from possible out- 



54 



CREATIVE COMPUTING 



Stan, cont'd . . . 

comes for the first rolls only. That also 
explains why the total of winners plus 
losers was exactly 180. In lines 304 to 346 
you divided rolls for points according to 
their probabilities without actually rolling 
the dice any more. You only used the ratio 
of wins to losses for a given point. Your 
program really shows what happens in 180 
TURNS!!!" 

"But if that's the case, I could have 
done it without the computer. I know that 
on the first roll 8 out of 36 win with a 7 or 
1 1 , and 4 out of 36 lose with 2, 3 or 1 2 and I 
had the correct probabilities for the 
chances of a win for any of the other 
possible rolls. I could have just gone ahead 
and calculated the result without the 
computer." 

"Right again. Since the 4 will show up 
3/36 of the times on first roll and the 
chances of winning after you have a point 
of 4 are 3/9 then you can add 3/9 times 
3/ 36 or \ / 36 to the chances of winning and 
6/9 times 3/36 or 2/36 to the chances of 
losing. Then all you have to do is complete 
that for all of the other points that take 
more than one roll." 

At just that moment, with the timing 
that can be found only in Fairie Tales and 
computer magazine scenarios, Stan's mom 
returned. 

"As far as I can tell, this all started 
when Dad sent you off on a wild goose 
chase, Stan. I just finished trying a Chi- 
Square analysis of the original numbers 
your father had, and they are within the 
kind of distribution one would expect from 
real dice in 100 rolls." 

"What is a Chi Squared watchuma- 
callit?" 

"Let me explain. Start by imagining a 
pair of dice that always gave you the exact 
probabilities for each of the numbers for 
every set of 36 toUs. Would you say that 
was a fair pair of dice?" 

"No," said Stan and his father at the 
same time. Stan continued, "That sounds 
like the random number generator we just 
had — which wasn't too good." 

"And if you had a set of dice that gave 
six 2*s, five 3's, four 4's, three 5's, two 6's, a 
7 and an 8 and then two 9's, three 10*s, four 
IPs and six 12Y?" 

"Those sound like loaded dice," 
replied Stan's father. 

"Good. What we would like to see is a 
set of dice that produces something like the 
expected probabilities, but not exactly 
those proportions. That is the way a set of 
dice should behave. The question is how to 
tell if the rolls that we get are close enough 
to real dice to be acceptable, but not so 
close that the dice must be rigged? That's 
where statistics comes in. We can test some 
rolls of the dice to see how 'real' the results 
are. If the dice were rolled 100 times, as in 
the sample test that Dad had, one would 
expect to see the value 2 showing up about 
1/36 times 100 or 2.78 times. That's 
according to probability. In the test, there 



were two occurrences of the value 2. Now, 
in Chi Square, we call the number that we 
got in the test the observed quantity. We 
calculate the value of the observed minus 
the expected quantities and square that. 
This result is then divided by the expected 
quantity. We do that for each of the 
possible combinations and add them all 
together." 

"That's all very interesting, but what 
good is it?" 

"Well, if the result we get is 0, then all 
of the observed values are exactly the same 
as the expected values, and we already 
know that is unacceptable. On the other 
hand, if the value is really large, then the 
observed values are way out of line and 
that is no good either. What we want is 
some value that is in the middle. If you 
look in this book (Knuth, D.E., 1969; 
Seminumerical Algorithms; Vol. 2 of the 
seven part The Art of Computer Program- 
ming; Addison- Wesley Publishing Com- 
pany, Reading, Mass.) where the author 
talks about random number generators 
and testing them, you will find a table that 
tells you what range of values are 
acceptable for a dice simulation (pages 34- 
39). If the value is between 3.94 and 18.31 
then the simulator behaves in about the 
same way as a pair of real dice would. In 
the case of the Dad's test data, the value 
was 14.68. That is extreme enough to 
suggest trying the statistic on a few more 
examples, but it looks pretty good." 

"Can I use this Chi Square stuff to 
test other kinds of random number 
sequences?" 

"Yes. You might have to use a 
different line in the table if you are 
producing a smaller or larger number of 
different values, but the general idea is the 
same." 

"Well, I guess you and I owe Mom one 
this time," Stan's father said. "Seems we 
should have asked for her help earlier." 

"Well," Mom said, "I wanted to try a 
few more tests on the random numbers, 
and there's still the matter of some 
unwashed dishes. So ..." □ 




"It's our latest model. There's absol- 
utely no problem it can't solve or run 
away from." 



Announcing the most important utilit 
ever introduced for the TkS-80* Mode 



ility 1 1 
dell 



and Model II- 



TM 



ENHBAS 



ENHBAS is an Enhanced Basic extension 
module, which loads at the top of BASIC, add 
ing many commands and background tasks— 

DOver 30 new commands added to your 
BASIC: 

•SORT-Multi-keying, multi-tagging array 
sort. Sorts thousands of items in mere 
seconds, all with one command! 

•JNAME-Use line labels along with line 
numbers in branching statements, as in 
assembly language, using the ENHBAS 
commands GTO and CSUB (special 
GOTO and GOSUB). 
How many times have you wanted to use 
variables to reference line numbers? Now 
you can! GTO and CSUB allow variable 
expressions as operands, such as in 
GTO X+40. 

•WHILE / WEND-New, structured pro- 
gramming loop construct. Makes for more 
logical program flow (less GOTO's). 

•EXEC / EVAL-Two new, extremely pow- 
erful functions! EVAL evaluates an alge- 
braic expression in string form. With EVAL 
you can manipulate complex functions in 
string form, and then evaluate them. EXEC 
executes a string expression as if it were 
a BASIC program line! With EXEC, your 
computer can actually write its own pro- 
grams and execute them! 

•CALL- Pass control to machine language 
subroutines at any address, passing para- 
meters both ways. 

•CLM / PAGE- Set up automatic page 
roll-over and other line printer functions 
from BASIC. 

•All these and many more! 

Din addition to the above commands, Model I 
ENHBAS contains vector graphics and 
drawing commands. Model II ENHBAS has 
many functions suited to business program- 
ming — ISAM file handling commands, RS-232 
access, and many more; along with several 
Model I BASIC commands left out of Model II 
(PEEK, POKE, OUT, etc.). 

DENHBAS includes many background util- 
ities (Model I version): 

•U*er -definable cursor 
•Key click 

•Two-tone beep on error 
•Automatic lower-case 
•Automatic debounce 
•Short-entry command* 
(Shift-letter print* command) 
•Real Control key* 
•One hitter command* 
•Formatted LIS Tins* 

ENHBAS is available for: 

16K Model l-Level II Tape $39.95 

32K Model I Disk $39 95 

32K Model III (avail. 1 1/1/90) $39 95 

32K Model II (on TRSDOS disk) $99.95 

'TRS-80 is a reg. trademark of Radio Shack, a Tandy Co. 

Other software: 

CSG PILOT Disk based, high level language. 
32K Model I Disk $59.95 

Z-EMULATOR-Executes assem. lang. lines. 

16K Model I— Level II Tape $29.95 

32K Model I Disk $29.95 

ENHCOMP Integer subset BASIC compiler. 

Full graphics. Requires RS Editor/ Assembler. 
32K Model I Disk $24.95 

ABBREV Level I abbrev. in Level ll/Disk 

16K Model I— Level II Tape $24.95 

32K Model I Disk $24.95 

Dealer and OEM inquiries invited. 



The Cornsoft Group 

6008 N Keystone Ave., Dept C 

Indianapolis, IN 46220 

(317) 257-3227 



CIRCLE 162 ON READER SERVICE CARD 



NOVEMBER 1980 



55 



Interactive Systems 

And The 
Design Of Virtuality 

The Design of Interactive Systems, 

Tomorrow's Crucial Art Form, Rests 

On New Philosophical Principles 



Ted Nelson 



What follows expresses the personal 
views of the editor. 

It should be plain by now to anyone 
that the future of mankind is at the 
computer screen. Already hundreds of 
thousands do their work at screens, 
working with text or diagrams or maps. 

This is only the beginning, and I think 
it is obvious that virtually every form of 
non-physical work, and many forms of 
play and leisure study, will soon migrate to 
the interactive computer display screen, as 
suitable systems are designed. 

Yet most interactive systems are 
lousy; and almost every new interactive 
system I see leaves me aghast. 

In this article I will try to set forth very 
briefly, with examples, what I conceive to 
be the correct principles of design for 
interactive systems. There is much more to 
be said, at both concrete and theoretical 
levels, but here for now is the brief 
overview that is so sorely needed. 

Interactive screens, as everyone 
should know, can present anything — text, 
pictures, maps, the latest information on 
whatever you need to keep track of. 

Real-world control from a screen 
already occurs in some places. Systems are 
installed or available for factories and 
utility companies — and military forces — 
that allow the user to modify the world at 
the touch of a picture. By changing a 
picture, the user can cause the real world to 
change accordingly — if the system is so set 
up. Change a valve in a diagram on the 
screen, and the real valve itself, half a mile 
away in the refinery, opens or closes. 

The potential flexibility of such 
systems is enormous. Any pointing tools 
can be used to work in this fashion, if 
suitably linked into the controlling 
computer and its program. (You could 
open that valve with a keyboard, a 
joystick, a tablet, a trackball, a mouse — or 



1980 T. Nelson. Trademarks cited are those of 
the author. 



any other mechanical hookup you might 
prefer.) 

Both laymen and computer people 
mistakenly believe that the design of 
interactive systems is somehow a "tech- 
nical" matter. While there are many 
technical aspects to such design, I believe 
the conceptual and even artistic problems 
of such design far outweigh in importance 
the mere technical details. The designing 
itself is art, not science at all. (Sometimes, 
of course, there is a question of whether a 
thing can actually be done, or how, in 
which case technical questions loom large.) 

PITFALLS 

There are many design pitfalls in 
attempting to build interactive systems. 
Let us run by these quickly. 
I. Cheap AI Systems 

One approach that was popular five 
or ten years ago was the "artificial intelli- 
gence" approach, based loosely on the idea 
that a user would type in English-like 
sentences, and the program would pretend 
to be alive, friendly and understanding in 
responding to what you thought you asked 
for. 

But the typing of input strings is 
tedious and generally a waste of time. 
Moreover, the program's masquerading as 
an intelligent entity is usually misleading 
and annoying, both for the time wasted in 
trying to guess what the program really 
does, and for its gratuitous pseudo-social 
invasion of contemplative privacy. For- 
tunately, this type of system is propor- 
tionally on the wane (except in the 
personal computing field, where it lives on 
as the "adventure," or Guess-My-Com- 
mands, game). 

(Note that these criticisms are not 
intended to apply to artificial intelligence 
as a long-term goal, but only to artificial 
intelligence as a local pretense of con- 
temporary software.) 



2. Command Languages 

Another common approach is to 
create a command language for what you 
want to do — like, say, the "text editors" of 
old. Each action must be called forth by 
typing in an input string in code. 

But user languages are hard for 
beginners to learn, and have the "com- 
puterish" feel that is so repellent to non- 
computer people. 

Command-language systems are also 
clumsy and obtuse compared to more 
highly responsive design. (As one wide- 
spread example, more highly interactive 
forms of word processing have appeared, 
supplanting the old text editor programs 
that used to require (for instance) explicit 
insertion commands.) 

Command languages are also danger- 
ous. By permitting many simultaneous 
options (and variations, and modifications 
of further variations), command languages 
make it possible for things to go terribly 
wrong in a very short time — terribly, 
terribly wrong; irrecoverably wrong. 
While language facilities must of course be 
available to programmers, an environment 
in which a user thinks about something 
other than the computer should not be 
tangled by the complications of a com- 
mand language that forces his attention 
where it does not belong. 

3. Menus and Afterthought Interfaces 

The last pitfall is what I call the menu 
trap. Now, menus are all right, and better 
than the approaches I have mentioned so 
far, but for high responsiveness and 
performance values, I believe the kinds of 
interactive systems we will describe below 
are greatly preferable. 

The so-called "user-friendly inter- 
face" is a variation of the menu trap. The 
very phrase suggests that the user interface 
goes on after the system is actually built, 
like paint. We will speak more about this 
later. 



56 



CREATIVE COMPUTING 



The Ten-Minute Rule 

An interactive computer system for 
most purposes should be learnable in 
under ten minutes. This criterion shocks 
many computer people. It has certain 
vaguenesses. But as a striking statement - 
a battle cry — mandating high-power 
interactive design, it is the most concise 
way I know of saying how easy things 
should be. They understand the ten-minute 
rule in the arcades. They understand the 
general idea of virtuality design in the 
arcades. The people who don't understand 
are the "computer professionals" — who 
sometimes do great damage. 

VIRTUALITY 

The central concern of interactive 
system design is what I call a system's 
virtuality. This is intended as a quite 
general term, extending into all fields 
where mind, effects and illusion are proper 
issues. 

By the virtuality of a thing I mean the 
seeming of it, as distinct from its more 
concrete "reality," which may not be 
important.* 

An interactive computer system is a 
series of presentations intended to affect 
the mind in a certain way, just like a movie. 
This is not a casual analogy; this is the 
central issue. 

I use the term "virtual" in its 
traditional sense, an opposite of "real." 
The reality of a movie includes how the 
scenery was painted and where the actors 
were repositioned between shots, but who 
cares? The virtuality of the movie is what 
seems to be in it. The reality of an 
interactive system includes its data 
structure and what language it's program- 
med in — but again, who cares? The 
important concern is, what does it seem to 
be? 

A "virtuality," then, is a structure of 
seeming — the conceptual structure and 
feel of what is created. What conceptual 
environment are you in? It is this 
environment, and its response qualities 
and feel, that master — not the irrelevant 
"reality" of implementation details. And to 
create this seeming, as an integrated whole, 
is the true task of designing and imple- 
menting the virtuality. This is as true for a 
movie as for a word processor. 

The virtuality of an interactive system 
is composed of its conceptual structure and 
its feel. A system should have both a good 
conceptual structure and the right feel. 



The truly interactive system, as in the 
arcades, needs no carriage returns; each 
user action creates an instant response — 
and may not echo what you typed. 

(It is amusing to note that the firm 
most associated with "the computer" in the 
public mind does not manufacture com- 
puters which can be programmed in this 
way. Yet I believe this is how computers 
should in general be programmed.) 



Here too we see an exact similarity of 
the interactive system to the motion 
picture. It is the overall impression, not the 
component parts or the particular tricks of 
presentation, that count. In a movie it 
doesn't matter what kind of camera or 
form of scenery was used to make a given 
shot; what matters is the contribution that 
the scenery makes to the shot (and its feel), 
and the contribution that the shot makes to 
the film (and its feel). 



The interactive system, I think, may 
best be thought of as a new kind of movie; 
but a movie that you control, and a movie 
that is about something you wish to affect. 
And it is the imagining of this interactive 
movie that is the important design task. 
Never mind the nuts and bolts — what's 
the dream? 

The following brief discussions are 
intended to highlight some interesting 
systems and their special features, con- 
sidered as virtualities. In the final part of 
the article I will endeavor to tie together 
some general principles of virtuality 
design. 



A more detailed analysis would get 
down to exact controls and the way they 
are merged with presentations, showing 
the infuriating intricacies of ramification 
that must be dealt with. I could spend a 
page comparing the cursor behavior when 
two different word processors Delete, and 
much more on the nature of conceptual 
structure. But not in this overview. 



DATALAND 

One of the most striking and easy-to- 
use computer systems in the world is the 
system called "Dataland," created by 
Nicholas Negroponte and his associates at 
the Architecture Machine Group at MIT. 

The Dataland user sits at a large 
screen with various controls. The main 
controls are essentially joysticks that allow 
you to pan and zoom. 

On the screen you see an unusual 
collection of pictures, some quite small. 
You may zoom in on anything (panning 
the screen to select what you want 
magnified), and the original pictures or 
symbols will be enlarged, augmented by 
more detail, or replaced by other pictures. 

In principle this can go on indef- 
initely. It is like being in satellite orbit with 
a huge zoom lens, able to look at an 
overview of Los Angeles, then magnifying 
it until you can read the fine print on a 
newspaper on the sidewalk. 

Because Negroponte is a great show- 
man, he has dolled the system up with a 
variety of graphic features, synthesized on 
the screen by computer, such as ticking 
clocks. 



The closest other term I can find is "mental environ- 
ment.'" My students have urged me to retain the term 
"virtuality," even though it causes confusion among 
users of so-called "virtual systems." meaning real 
systems configured with virtual huge memory. 




NOVEMBER 1980 



57 



Interactive Systems cont d... 

By storing detailed information on 
any topic in the Dataland at specific levels 
of magnification, it is possible to put huge 
arrays of data where the user can 
essentially pick out what he wants 
graphically and dive into it. A stunning, 
sweeping concept, rather obvious if you 
think about it; yet it makes many of the 
systems that have been developed for 
database query look foolish. You can do it 
all visually with Dataland, at least with 
hierarchical data. In under ten minutes' 
training, you are able to search through 
great hierarchies of stored information, 
pictorially. 

Although the system in its present 
form requires millions of dollars worth of 
equipment, I am sure that within a few 
years we will have access to comparable 
systems on machines as small as the Apple 
or Atari. 

Enthusiasts have supposed that there 
is something fundamental and magical 
about Dataland's two-dimensional array. 
From the standpoint of virtually theory, 
however, the 2D array is only one kind of 
clear and simple world. This system's 
power simply shows the power of two- 
dimensional organization in our thought, 



especially because of our experience with 
paper and other 2D viewing situations. But 
there are many other powerful organizing 
ideas. While clarity and simplicity (and 
good examples like Dataland) are desir- 
able, many other screenworlds will also be 
exciting and useful. 

VISICALC 

One of the most important new 
software products is Visicalc, originally 
designed by Dan Bricklin and now 
marketed by Personal Software, Inc. 

Visicalc (see review in last August's 
issue of Creative Computing) effectively 
creates a vast dynamic worksheet for 
bookkeeping, accounting and financial 
planning. 

Now, many people suppose that 
accounting is an exact science. Many 
accountants, however, feel differently. A 
great deal of their time is spent reworking 
columns of figures and deciding which 
numbers belong where. An accountant 
may spend hours creating lists of expen- 
ditures, adding them up — then removing 
items, putting other items in, and adding 
the column up again in its new form. 

This is all perfectly legitimate. Just 
why accountants do this all the time is 



outside the scope of this article, but they 
do. 

Visicalc consists of programmable 
columns. You may create, for instance, a 
column of figures, and tell it to keep a sum 
at the bottom that is always correct; every 
time you insert or remove a new item, the 
sum is recalculated. 

But Visicalc goes much further. You 
can tell this programmable worksheet, for 
instance, to take 20% of each figure in 
Column A and put it in a corresponding 
position of Column B. 

The programming is by example, and 
somewhat hard to learn, but Visicalc 
essentially allows the creation of an 
enormous array of columns and terms, 
with fairly complex relations among them, 
all instantly up-to-date every time you 
change a figure. 

Those who work a lot with figures 
consider it breathtaking, and there are 
accountants who consider it reason 
enough to get a computer. 

Visicalc might be visualized in any 
number of ways. I like to think of it as two 
sheets — the columns of figures, which can 
be seen by the user, and the overall 
program sheet, which cannot. 

Thus the world of Visicalc consists of 



PROGRAM SHEET 
(invisible) 



WORKSHEET 




SCREEN 



A sheet of columns, with instant summing-up and carrying-over, is controlled by an invisible program on an unreachable sheet. 

58 CREATIVE COMPUTING 





0?E*AT)C»«^ STATES 


G*re T£W»« 


45* DfC 


cm us©*- 


*5« OtC 


PCS pws 


***« P${ 


WJP$ Rt« 


2 


C»T*T PfcfS 


« P3I 


CHTKT HTft 


& Z*. 


fW «SE KTff 


■ & Gftt 


P«P KSf »?•*£> 


3.08 «Rf*S^Hft 


FLUSH UH£ 


99 00 


mas «r» 


t,$8« (J At 


***■" 1 



THREE 

MILE 

ISLAND 

by Richard Orban 



COST ANALYSIS 

$*>0WTJHC COST * 2&8,0&6 

«&JKT*HAHCt COST t 






MEGAWATTS 
WE&AHATTfe 



<EtKTRIC BEWWD CfcAHOfcS AT )•«;? 2$ > 



PROJECTED «H>ffT * OS. SAO 



<LOSS> 



Put yourself in control of a nuclear reactor! 



"The aids you have in operating the plant are excellent. 
They include four graphical views of portions of the plant, 
an instrument panel, a financial summary and an equip- 
rrverrt status and failure log. 

"As a simulation Three Mile Island is excellent. As a game 
it is fascinating to me." 

Victor Fricke, Nuclear engineer in the March 1980 issue 
of Creative Computing. 



"This program will be a classic. 

"No school should be without Three Mile Island. If 
parents are buying a computer for the personal develop- 
ment and education of their children they must buy this 
program." 

Robert Elliot Purser, publisher of Purser's Magazine, 
A Software Directory. 



For the Apple II and Apple II Plus (48K) 



$39.95 



Apple is a trademark of Apple 
Computer Corp 



MUSE 



SOFTWARE 



TM 



330 N.CHARLES STREET 
BALTIMORE, MD 21201 
(301)659-7212 



CIRCLE 226 ON READER SERVICE CARD 



Call or write for a FREE catalog or 
the name of your nearest MUSE dealer 



NOVEMBER 1980 



59 



Virtuality, cont'd... 



these two sheets; but the views allowed of 
this show only the lower one. (This is 
something like the division between 
Heaven and Earth in some religions, the 
former supposedly being visible and the 
latter not; but I would hesitate to conclude 
anything about the religious views of 
Visicalc' s designers from this.) 

Considered as a virtuality, then, 
Visicalc has a serious blind spot: although 
you create and use the program sheet, you 
are not allowed to see it. 

Pointing up such omissions is a 
possible benefit of thinking in terms of 
virtuality. By considering the whole shown 
world, its views and feel and control 
structures, we can search out omissions 
and asymmetries and suggest better 
structuring. (That this is possible for 
something as good as Visicalc shows that 
this approach may be of very general 
benefit in the future.) 

PARKED CARS 

An unusual example of an elegant and 
spare virtuality is a work entitled "Parked 
Cars" by the Argentinian artist Laszlo 
Snead. It has not previously been de- 
scribed in print. While the work is still only 
in the planning stages for the Apple, it can 
be considered as an interesting virtuality 



whether or not it is ever completed. 

Some might call "Parked Cars" an 
Adventure game; the artist himself prefers 
to refer to it as a "work of art." Indeed, it 
might be considered an X-rated work of 
art, since it may include both sex and 
violence, but only if the user so chooses. 

"Parked Cars" is to be in the form of a 
comic strip, showing one panel at a time in 
Apple lo-res graphics. (This mode on the 
Apple also allows an independent rec- 
tangular panel of scrolling text, which may 
serve as talk balloon or caption). Snead 
intends the overlays for the whole of 
"Parked Cars" to just fill one side of a 
diskette, so there is to be much doubling- 
up of text and graphics, in ways the artist 
hopes will be inspired. 

The action of "Parked Cars" takes 
place at a scenic overlook on a parkway at 
night. Three cars drive in, in random order. 
They are inhabited, respectively, by 
persons that Snead refers to as "The Hot 
Couple," "The Nervous Couple" and "The 
Guy With a Knife." 

Now, a number of interactive stories 
already exist for reading from computers. 
This one may be the first to have extensive 
graphics. What is especially interesting 
from the virtuality standpoint, however, is 
Snead's selection of the user controls, and 
the way they relate to the world we are 
watching. 

The user may simply rove through the 
three-dimensional scene as a disembodied 
spirit, spying on the different characters. 



V 






W it •*! ' Jf' * ' ' 




Watch from afar, or enter the person's mind. You choose what happens. 



But they won't do much; they stay in loops. 
The user may, however, enter the psyche of 
any character, and read that character's 
impulses as they pass through his or her 
mind. The full set of commands is: 

ROVE AS SPIRIT 

ENTER PSYCHE/ LEAVE 
PSYCHE 

THINK (brings forth a thought 
to read) 

ACT ON THOUGHT 

GO TOWARD/ AWAY FROM 
OTHER CHARACTER 

A little cogitation will suggest the 
vivid potential of this small set of 
commands, playing through a suitable 
scenario — which Sr.Snead is well advised 
to supply. 

What is less obvious is that this 
interesting control structure is especially 
suited to the somewhat raw material that 
Snead has chosen. While the same control 
structure could be applied to a more 
urbane dramatic setting — say, a detective 
story or political melodrama — the 
potential tedium on the one hand or wildly 
varying outcomes on the other would 
create great difficulties. The choice of a 
small cast in a highly-charged small setting 
would seem to be ideal balance for working 
through the artistic premises of this 
virtuality. 

WORD PROCESSORS 

Despite pioneering work by Douglas 
Engelbart and others, popular opinion has 
it that "word processing" originated about 
1967 with the appearance of IBM's 
magnetic tape typewriter. 

Since then "word processing systems" 
have become epidemic. These are almost 
invariably disguised computers with a 
fixed program that acts only as an 
interactive text editor — you aren't 
allowed to run any other program. 
(Indeed, the salesman will deny ardently 
that it is a computer). 

If you have a personal computer, 
however, the term's meaning shifts: a 
"word processor" becomes an interactive 
text-editing program that you run on your 
computer. (The marketing of personal 
computers is already beginning to impinge 
on the field of fixed-function word 
processors — the kind that won't let you 
run any other programs — and this is due 
to increase.) 

Now, for some reason every technical 
wonk in the world thinks he is capable of 
writing a good word processing program. 
But in my opinion there does not exist a 
single satisfactory word processing pro- 
gram anywhere in the world. 

This is not the place to hold forth the 
argument in detail. My basic view, 
however, is that a proper word processor 
should be, like any other interactive 
system, an artfully constructed virtuality, 
an integrated system of world, views and 
controls that is extremely easy to visualize, 
roam in and change. 



60 



CREATIVE COMPUTING 



THE 
CONTROLLER 



® 





THE 
ANALYZER 



® 



ft 



NOVEMBER 1980 



DAKIN5 CORPORATION 

The Controller and The Analyzer are registered trademarks of Dakin5. Inc The Controller is marketed by Apple Computers. Inc 

CIRCLE 120 ON READER SERVICE CARD 
61 



Virtuality, cont'd... 

Computer people (who are not 
usually concerned writers) have gotten 
some fairly twisted notions about the 
nature of text. The correct units of text are 
the word, sentence, paragraph, heading 
and chapter. Yet for some ungodly reason, 
computer people have gotten the idea that 
the units of text are the character 
(including control characters) and the line 
(or linefeed). This in turn leads to the 
unfortunate writers being told by the 
programmers that they're not thinking 
logically because they can't keep their 
minds on the invisible control characters. 
The programmers' heads have been in the 
wrong place, implementing the wrong 
virtuality. 

(We will not even discuss here 
problems of the loss and protection of files, 
or the atrocity of short filenames required 
by some popular operating systems.) 

Now, a case can be made for baroque 
word-processing programs that take weeks 
and months to learn, and allow you to 
format output in columns, windows and 
whatnot, but the fundamental problem of 
word processing is fast input and revision, 
and making the system easy to learn for 
everyone in the office (including office 
temps). Thus I think we need simplicity 
more than we need the baroque. 

I have personally been designing word 
processing programs since 1960, and 
indeed the theory of virtuality presented 
here has co-evolved in part with the 
designs. But I will only inflict one of my 
text designs on the reader of this article, 
and that only loosely. 



That design is the JOT M system 
(Juggler of Text). And its special virtue is 
its ease of learning and use. In all cases 
where the system was demonstrated to a 
fresh user, the user learned to insert, delete 
and rearrange text in under seven minutes. 
(Unfortunately the implementation died, 
being in an obscure language on a now- 
defunct machine, and this figure is for a 
total number of less than twenty people. 
However, the system is presently being re- 
implemented for the Apple.) 

Basic Operations 

The basic operations of a simple word 
processor are essentially insert; step 
forward and back by word, sentence or 
paragraph; delete units of various sizes; 
and rearrange. 

The JOT system was originally 
designed to do all this with the Teletype 
Model 33 as a terminal, capturing full 
upper and lower case even though that 
device has no shift key. 

There are no command input strings. 
There are also no menus, a certain 
minimalist aesthetic having taken over. 
Half a dozen or so keys have been given 
new meanings which appear to hang 
together psychologically. 

For instance, in one of the principal 
modes, left arrow means "move leftward to 
the beginning of the sentence" and the right 
arrow means "move rightward to the end 
of the sentence." The space bar means 
"step one word." 

In the other main mode, the same 
controls mean "step left to the beginning of 
the paragraph," "step right to thebeginning 



FIRST PARAGRAPH (Condensed to one line) 



PARAGRAPH (Condensed to one line) 



PARAGRAPH (Condensed to one line) 



SENTENCE (Condensed to one line) 



SENTENCE (Condensed to one line) 



STRAIGHT TEXT ("Word Mode") 



STRAIGHT TEXT ("Word Mode") 



STRAIGHT TEXT WORKLINE (Cursor stays on this line) 



STRAIGHT TEXT ("Word Mode") 



STRAIGHT TEXT ("Word Mode") 



SENTENCE (Condensed to one line) 



SENTENCE (Condensed to one line) 



PARAGRAPH (Condensed to one line) 



PARAGRAPH (Condensed to one line) 



LAST PARAGRAPH (Condensed to one line) 



(VARIOUS PROMPTS) 



I. 






Superstep 
(one higher unit) 




Step One 
Current Unit 



(space) 

Delete One 
Current Unit 




Current Text 
position 



ScreenJot™ - the expanded version of JOT shrinks an entire document to one screenful, condensing 
sentences and paragraphs to one line each for orientation and overview. The cursor stays on the midline. 



of the paragraph," and "skip one sen- 
tence. " 

I will not attempt to justify these 
commands in isolation; it is the whole 
system whose virtuality we design, and the 
individual commands stand or fall as part 
of this whole. 

Some programmers consider the 
command structure of JOT to bedetestable 
and illogical. But the system was not 
designed for programmers. It is intended 
to be usable for hours on end by non- 
computer people who are tense (sometimes 
frantic), and utterly preoccupied with the 
words, not with the machine. 

The actual state-diagram flowchart of 
the system is a hairy mess. (Indeed, the two 
programmers who implemented it orig- 
inally agreed between themselves that it 
was all wrong — until they saw it in 
operation. Both became ardent virutality- 
design freaks. The fact that two exception- 
ally talented individuals were not able to 
imagine the system's performance from the 
flowchart shows what we are up against in 
general.) 

I have spent no fewer than five 
hundred man-hours on the design of the 
JOT system's virtuality only, not counting 
any implementation. My impression is that 
most designers spend little or no time on 
virtuality design. While I make no claim 
that quality of work is ever proportional to 
the time spent, I think that the important 
thing is to design the interactive qualities 
first, then implement. 

In essence the design process for JOT 
involved considering many different 
desirable features and operations, then 
cutting them down judiciously to a very 
small but powerful set that could be easily 
learned. In addition, it became a challenge 
to marry the desired control functions to a 
sparse keyboard (such as that of the 
Teletype or Apple) while still making it 
seem natural. Others can judge from the 
live system whether this has succeeded. 

Regardless of the success of this 
particular design, we will return to these 
principles, and try to generalize them, 
later on. □ 

(TO BE CONCLUDED 
IN THE DECEMBER ISSUE) 



62 



CREATIVE COMPUTING 



•cQMPJTRQNicsi EVERYTHING 



50 N. PASCACK ROAD 
SPRING VALLEY, NEW YORK 10977 



* APPLE IS A TRADEMARK OF THE APPLE CORP 



FROM COMPUMAX BUSINESS SYSTEMS 

The COMPUMAX business applications programs are written with the novice 
computer user in mind. They are easy to use. yet powerful in their capabilities. Further, 
COMPUMAX supplies the BASIC source code. Thus the programs are easy to modify. 

MICROLEDGER 

This General Ledger system performs the essential functions of dual entry bookkeeping 
and matches revenues and expenses: 
MICROLEDGER includes the following programs.: 

LEDGER 1 - builds and maintains the CHART OF ACCOUNTS file. This file contains 
both current and accumulated totals for each account. 

LEDGER 2 - builds and updates the JOURNAL TRANSACTION file. 

LEDGER 3 - lists both the the JOURNAL file and the CHART OF ACCOUNTS. 

LEDGER 4 - computes the TRIAL BALANCE and executes POSTING of journal trans- 
actions into the CHART OF ACCOUNTS. An AUDIT TRIAL of all transaction is output. 

LEDGER 5 - produces the PROFIT AND LOSS STATEMENT. 

LEDGER 6 - produces the BALANCE SHEET Assets, liabilities and owners' equities are 
shown by account and by totals $140.00 

MICROPAY 

An Accounts Payable system. MICROPAY includes the following program & functions: 

PAY 1 - initializes both Transaction and Master files, then begins the Accounts Payable 
process by inputting and adding records in the Transaction file. 

PAY 2 - allows for changes and deletions of Transaction and Master records. 

PAY 3 - reports outstanding Accounts Payables in four categories; under 30 days, 31-60 
days, 61-90 days, and over 90 days. 

PAY 4 - reports all outstanding Accounts Payables for a single customer or for all custo- 
mers, and computes Cash Requirements. 

PAY 5 - reports all outstanding Accounts Payables for a single date or for a range of 
dates and computes the Cash Requirements 

PAY 6 - lists both the Transactions and Master files. 

PAY 7 - prints checks and accumulates and journalizes Accounts Payables. This pro- 
gram simultaneously creates entries for the MICROLEDGER file $140.00 

MICROREC 

An Accounts Receivable system. MICROREC includes the following programs and 
functions: 

REC 1 - initializes Accounts Receivable files, adds A/R record and prints invoices. 

REC 2 - accepts receipt of customer payments and changes or deletions of A/R Trans- 
action or Master tile records. 

REC 3 - reports outstanding Accounts Receivables in four categories; under 30 days. 
31-60 days. 61-90days. and over 90 days 

REC 4 - reports all outstanding Accounts Receivables for a single customer, or for all 
customers and computes Cash Projections 

REC 5 - produces reports for all outstanding Accounts Receivables for a single date or 
for a range of dates and computes Cash projections. 

REC 6 - lists Transaction and Master files and accumulates and journalizes Accounts 
Receivables, creating JOURNAL entries which communicate with the MICROLEDGER 
JOURNAL file $140.00 

MICROINV 

This Inventory Control system presents a general method of Inventory Control and pro- 
duces several important reports. Its program includes: 

INV 1 - initializes Transaction and Master files and adds and updates Transaction and 
Master records 

INV 2 - handles inventory issued or received, creating inventory records. This program 
also accumulates and journalizes transactions, producing JOURNAL entries which 
communicate with the MICROLEDGER file. 

INV 3 - lists both Transaction and Master files 

INV 4 - produces the STOCK STATUS REPORT, showing the standard inventory stock 
data and stock valuation, and the ABC ANALYSIS breaking down the inventory into 
groups by frequency of usage 

INV 5 - gives a JOB COST REPORT/MATERIALS, showing allocation of materials used 
year-to-date by each job or work code (This is complemented by the Job Cost Report/ 
Personnel in the MICROPERS program.) 

INV 6 - computes and provides the E.O.O. (Economic Order Quantities) $140.00 

MICROPERS 

This is a Payroll/Personnel program whose functions include: 

PERS 1 - initializes the Master file and allows for entry and updates of Master records. 

PERS 2 - initializes the Payroll file and allows for entry and updates of payroll records. 

PERS 3 - lists an Employee Master Record or the entire Employee Master file; lists a 
single Payroll Record or the entire Payroll file. 

PERS 4 - computes Payroll and prints the PAYROLL REGISTER Prints PAYCHECKS 
and creates JOURNAL entries to be fed into the MICROLEDGER JOURNAL file. 

PERS 5 - produces the JOB COST REPORT/PERSONNEL, computes the quarterly 941 
bank deposit, and the Annual W-2 run .* $140.00 

All COMPUMAX programs available in machine readable format (diskette form) for the 

following machines. 

TRS-80 T " Model I Micropolis 1053/11 

APPLE II Microsoft under CP/M 

PET CBASIC under CP/M 

Cromemco 



FROM ADVENTURE INTERNATIONAL (By Scott Adams) 

1 1. ADVENTURELAND - You wander through an enchanted world trying to recover 
the 13 lost treasures. You'll encounter wild animals, magical beings, and many 
other perils and puzzles. Can you rescue the Blue Ox from the quicksand? Or find 
your way out of the maze of pits? Happy Adventuring 

t 2 PIRATE'S ADVENTURE - "Yo ho ho and a bottle of rum" You'll meet up with the 
pirate and his daffy bird along with many strange sights as you attempt to go from 
your London flat to Treasure Island. Can you recover Long John Silver's lost 
treasures? Happy Sailing, matey 

3. MISSION IMPOSSIBLE ADVENTURE - Good morning, your mission is to. . . and so 
it starts. Will you be able to complete your mission in time? Or is the world's first 
automated nuclear reactor doomed? This one's well named. It's hard, there is no 
magic, but plenty of suspense. Good luck 

4. VOODOO CASTLE - Count Cristo has had a fiendish curse put on him by his 
enemies. There he lies, with you his only hope. Will you be able to rescue him or is 
he forever doomed? Beware the Voodoo Man 



• All orders processed 
within 24-Hours 

* 30-Day money back guarantee 
on all Software (less a $3 
penalty for handling) 




8 



THE COUNT - You wake up in a large brass bed in a castle somewhere in Tran- 
sylvani. Who are you, what are you doing here, and WHY did the postman deliver 
a bottle of blood? You'll love this Adventure, in fact, you might say it's Love at First 

Byte 

STRANGE ODYSSEY - Marooned at the edge of the galaxy, you've stumbled on 
the ruins of an ancient alien civilization complete with fabulous treasures and 
unearthly technologies. Can you collect the treasures and return or will you end 

up marooned forever? 

MYSTERY FUN HOUSE - Can you find your way completely through the strangest 
Fun House in existence, or will you always be kicked out when the park closes? . . . 

PYRAMID OF DOOM - An Egyptian Treasure Hunt leads you into the dark re- 
cesses of a recently uncovered Pyramid. Will you recover all the treasures or more 
likely will you join its denizens for that long eternal sleep? 

GHOST TOWN - Explore a deserted western mining town in search of 1 3 treasures 
From rattlesnakes to runaway horses, this Adventure's got them all! Just remem- 
ber, Pardner, they don't call them Ghost Towns for nothin'. (Also includes new 
bonus scoring system!) $14.95 Per Adventure 

* Note: Apple requires 24K and has no lower case 

Recommended for the novice adventurer, with many built-in HELPS! 



FROM PERSONAL SOFTWARE INC. 

VISICALC $150.00 

Take virtually any problem you would explore using calculator, pen, and paper, 

working in rows and columns. Apply VisiCalc and you'll see why every reviewer of this 

product has said the same thing: VisiCalc is the most useful, most important program yet 

developed for personal computing. 

With VisiCalc, you work with an electronic worksheet of up to 63 columns and 254 

rows. At the juncture of any column and row you can type in words and numbers. VisiCalc 

automatically performs all arithmetic functions, net present value, and transcendental 

functions - instantly! 



CCA DATA MANAGEMENT SYSTEM $74.95 

DMS Features: 

File Creaton and Maintenance: 

• Fields may be alphanumeric, numeric, integer, floating point, or fixed decimal with 
commas 

• Fields may be COMPUTED FIELDS DMS will compute any field within a record, 
using constants or other fields in the same record. Functions include add, subtract, 
multiply, divide, and raise exponential powers. 

• Records are easily located, using the SCAN feature SCAN for records with a field 
over, below, or between a range of values. 

• Records are easily added and updated. DMS "prompts" you with questions. 

• Multi-diskette capabilities for larger files - up to 85.000 characters per file! 

• Sort the records into almost any order, using up to 10 fields as "keys". So you can 
sort for customer numbers; within zip code, for instance. 

• Delete records, "compact" files, and backup files on data diskettes easily. 
Report Features: 

• Print reports with records in any order. 

• Select fields to be printed. 

• Print mailing labels. 

• Numeric totals and subtotals can be specified when a value in an unrelated field in 
the same record changes. For example, sort, subtotal, and print according to depart- 
ment, or month, or customer number, or model number 



GUA 



BA NTEEDP«OFlT 



WINS 

PLACES 

SHOWS 



o«n/ AVERAGE PROFIT 
32% AT ALL TRACKS-1978 



THE HORSE SELECTOR II (FLATS) (By Dr. Hal Davis) $50.00 

New simplified version of the original Horse Selector. The first Horse Selection System 

to actually calculate the estimated odds of each horse 

HIGHER PROFITS (OVER 100%) POSSIBLE THROUGH SELECTIVE BETTING ON: 

• Rates each horse in 10 seconds. 

• Easy to follow rules. 

• Can be used with any Apple II Computer. 

• 100% money back guarantee (returned for any reason). 

• Uses 4 factors (speed rating, track variant, distance of the present race, distance of 
the last race) 

• Using the above factors, the Horse Selector calculates the estimated odds. BET on 
horses whose actual payoff (from the Tote Board or Morning Lines) is higher than 
payoff based on estimated odds. 

• Using the above factors, the Horse Selector calculates the estimated odds. BET on 
any selected horse with an estimated payoff (based on Tote Board or Morning Lines) 
higher than calculated payoff (based on Horse Selector II). 

• Source listing for the TRS-SO*", TI-59, HP-67, HP-41 , Apple and BASIC Computers. 

• No computer or calculator necessary (although a calculator would be helpful for 
the simple division used to calculate estimated odds) 

FREE Dutchlng Tables allows betting on 2 or more horses with a guaranteed profit. 





HOUR 

ORDER 

LINE 



(914) 425-1535 



ADO $2 00 FOR SHIPPING UPS AREAS 
ADD $3 00 FOR COD OR NON-UPS AREAS 
ADD $4.00 OUTSIDE USA. CANADA & MEXICO 



NEW TOLL-FREE 

ORDER LINE 

(OUTSIDE OF N.Y. STATE) 

(800) 431-2818 



CIRCLE 138 ON READER SERVICE CARD 



NOVEMBER 1980 



63 



r 




\ 



This topic has been covered before, 
and will probably be covered again, but an 
ease-of-use issue seemed the perfect 
opportunity to broach the subject. The 
point of all this is to save everyone a bit of 
time and anguish. We like to get software 
submissions, but there are certain guide- 
lines that should be followed. 

First, there is the hideous beast known 
as "commercial potential." Ours not being 
an ideal society, crass considerations such 
as this must be discussed. To put it bluntly, 
if a program has no chance of selling, we 
just can't go through the expense of 
producing and marketing it, no matter 
how well done or aesthetically pleasing it 
is. There is a simple test that will help 
determine a product's marketability. Ask 
yourself if you would lay out hard-earned 
cash for the program. And going one step 
further, honestly consider how many 
others might do the same. 

What makes a program unmarket- 
able? The most obvious reason would 
probably be a lack of originality. Haven't 
we seen enough versions of blackjack, tic- 
tac-toe and Star-trek? This should not be 
confused with games which are old to the 
world but new to the computer. For 
example, pinochle is an old game, but there 
are no commercially available programs 
that play this game. Also, the existence of a 
program does not eliminate the possibility 
of a truly improved or enhanced version. 
Just remember that this means a major 
modification, not a slightly changed re- 
work of the same old thing. 

Secondly, the program must be 
written to run on a popular machine with 
no special hardware required. Being 
realistic (and, alas, we must), you cannot 
expect to sell a thousand copies of a 
program if only three hundred people own 



Pleas, Prayers and 
Subtle Hints for Programmers 



McLaughlin and Lubar 



a machine on which it will run. Here at 
Creative, we are currently looking for 
software that runs on the Apple II, Atari 
and TRS-80 Level II computers. While 
others may be considered, and the list is 
certainly open to revision, at the moment 
this is where we see the largest market. 

If the program is a game (not all are, 
you know), you must also consider its level 
of challenge. People, not liking to be either 
bored or frustrated, do not want to spend 
money on a game that they can always win 



Haven't we seen enough 
versions of blackjack, 
tic-tac-toe and Star-trek? 



or on one that they can never win. With 
this in mind, we realize that providing 
multiple levels of difficulty will make the 
game appeal to a wider audience. Another 
thing to remember is that if the computer is 
to be an opponent, it must play a very good 
game but must not cheat (yes, we have seen 
dishonest programs). 

O.K., so, in concept, you have a 
marketable program. Now what? For one 
thing, the instructions must be under- 
standable. Some games, such as chess, 
have complex rules, but it is possible to 
present these rules in such a way that the 
average person can grasp them. Inter- 
posing demonstrations with rules is one 
good approach, and it helps break up the 
tedium of large blocks of text. Of course, 
the user should always have the option of 
skipping the instructions. 

Next, the program should be clean. 
That means, not only should it run without 



getting any SYNTAX ERRORs, but 
should do extensive error checking so that 
even the most novice user cannot suddenly 
find himself in the mysterious world of 
Basic. Input prompts should be under- 
standable (as opposed to cryptic). And if a 
number from I to 4 is requested, the 
program should not accept a 7 or B (and 
then make an absurd assumption about it). 
By the way, correct spelling would 
certainly be a nice touch. 

If appropriate, a program should use 
the full capabilities of the computer. The 
day of teletype graphics is happily past. 
Does your machine have color or sound? 
Good, put them to use to make your game 
more exciting and fun or to make your 
application easier to use or less prone to 
user error. 

The above discussion concerns the 
game itself. There are some other consider- 
ations dealing with the actual submission. 
The program must be in a machine 
readable form; namely tape or disc. A 
number of submitters fail to mention 
whether they are sending the program for 
software or magazine publication. Some 
even neglect to mention which computer 
the program is written for. Needless to say, 
this does not contribute to a good first 
impression. Documentation should also be 
included, explaininganythinga user would 
need to know. Any system-specific 
distinctions should be made; new or old 
ROMS for the PET, Level I or II for the 
TRS-80, and so on. 

If you want your program returned, 
an envelope with return address and 
postage is a must. That about covers it. 
Every program submitted gets careful 
consideration, and we expect to see a lot of 
good material coming from you folks out 
there. So get to it. 



64 



CREATIVE COMPUTING 



Now NRI takes you inside the 
world's most popular microcomputer 

to train you at home as the 
new breed of computer specialist! 



NRI teams up with Radio Shack 

to teach you how to use, 

program and service 

microcomputers . . . make you 

the complete technician. 

It's no longer enough to be just a 
programmer or a technician. With micro- 
computers moving into the fabric of our 
lives (over 200,000 of the TRS-80™ alone 
have been sold), interdisciplinary skills 
are demanded. And NRI can prepare .i 
you with the first course of its kind, M 
covering the complete world of the || 
microcomputer. ■ 

Learn At Home H 

in Your Spare Time ■ 

With NRI training, the program- 
mer gains practical knowledge of hard- 
ware, enabling him to design simpler, more 
effective programs. And, with advanced 
programming skills, the technician can 
test and debug systems quickly and easily 

Only NRI gives you both kinds of 
training with the convenience of home 
study. No classroom pressures, no night 
school, no gasoline wasted. You learn at 
your convenience, at your own pace. Yet 
you're always backed by the NRI staff and 



Training includes TRS-80 computer, transistorized 
volt-ohm meter, digital frequency counter, 
and the NRI Discovery Lab with hundreds of tests 
and experiments. 

(TRS-80 is a trademark of the Radio Shack division of Tandy Corp.) 
NOVEMBER 1980 




^ 




your instructor, answering questions, giving 
you guidance, and helping you over the 
tough spots. 

Explore the TRS-80 
Inside and Out 

NRI training is hands-on training, 
with practical experiments and demon- 
strations as the very foundation of your 
knowledge. You don't just program your 
computer, you introduce and correct faults 
. . .watch how circuits interact. . . interface 
with other systems. . . gain a real insight 
into its nature. 

You also build test instruments and 
the NRI Discovery Lab, 
performing over 60 
separate experiments 
in the process. You 
learn how your 
trouble-shooting 
tools work, and gain 
greater understand- 
ing of the informa- 
tion they give you. 
Both microcomputer 
and equipment come 
as part of your train- 
ing for you to use 
and keep. 



Send for Free Catalog... 
No Salesman Will Call 

Get all the details on this exciting 
course in NRI's free, 100-page catalog. It 
shows all equipment, lesson outlines, and 
facts on other electronics courses such as 
Complete Communications with CB, TV and 
Audio, Digital Electronics, and more. Send 
today, no salesman will ever bother you. 
Keep up with the latest technology as you 
learn on the world's most popular computer. 
If coupon has been used, write to NRI 
Schools, 3939 Wisconsin Ave., Washington, 
D.C. 20016. ^ 




NRI Schools 

McGraw-Hill Continuing 

Education Center 
3939 Wisconsin Avenue 
Washington, D.C 20016 
NO SALESMAN WILL CALL 
Please check for one free catalog only. 

□ Computer Electronics Including 
Microcomputers 

□ TV/Audio/ Video Systems Servicing 

□ Complete Communications Electronics 
with CB • FCC Licenses • Aircraft, 
Mobile, Marine Electronics 

□ CB Specialists Course 






j iinii 

i 
i 
i 
i 
i 




All career courses 
approved under Gi Bill. 
□ Check for details. 



□ Digital Electronics • Electronic 
Technology • Basic Electronics 

□ Small Engine Repair 

□ Electrical Appliance Servicing 

□ Automotive Mechanics 

□ Auto Air Conditioning 

□ Air Conditioning, Refrigeration, & 
Heating including Solar Technology 



I 
I 
I 

I 



Name 



(Please Print) 



Age 



Street 



City/State/Zip 

Accredited by the Accrediting Commission of the National Home Study Council 



CIRCLE 214 ON READER SERVICE CARD 



How to Solve It — With the Computer 



Part Three 
Donald T. Piele 



"Leibniz saw in his binary arithmetic the image of creation 

. . . He imagined that unity (1) represented God, and zero (0) 

the void; that the Supreme Being drew all beings from the 

void, just as 1 and express all numbers in his system of 

numeration. " 

Tobias Dantzig, 1939 



The binary number system lies at the heart of all computer 
operations. In this system all numbers can be expressed by a 
finite set of O's and Ts which can be easily represented by a 
low and high voltage. Other systems, easier for humans to 
handle, are the decimal and hexadecimal. These systems use 
more symbols for each digit and consequently the same 
number can be expressed in a shorter length. For example, 
the number 111 (binary) is equivalent to 15 (decimal) and F 
(hexadecimal). 

All three systems are used in connection with computing. 
Thus to be computer literate, one should understand the 
interrelationship of these three number systems. This months 
selection of problems for intermediate and advanced stu- 
dents will explore number systems and related problems. For 
the beginning student I will continue last month's exploration 
of Apple graphics and introduce FOR-NEXT loops. 

Lesson #3 (Beginning Students) 
Apple Graphics 

In the previous two lessons, I introduced the graphics 
commands GR, COLOR, PLOT A,B and END. I showed how 
the program 



to 


GR 


40 


C0L0R-C 


20 


INPUT H C0L0R* H tC 


50 


PLGT X,Y 


30 


INPUT " X,Y =" *X,Y 


60 


END 



will place a small colored square at the position X,Y on the 
40x40 low resolution graphics screen. Thus, any one of the 
1600 positions on the screen may be colored with the PLOT 
command; but will it take 1600 individually typed PLOT 
statements to cover the screen a specific color? At the rate 
beginning students type, it would take two weeks to write 
such a program. A typical solution might begin as: 



20 COLOR-9 
30 PLGT 0.0 

40 PLGT 3,0 



PLGT 1,0 
PLGT 4,0 



PLGT 2,0 
PLGT 5,0 



5 3 6 P L T 3 9 , 3 9 

'5370 END 

and end after 537 lines. Clearly, the time is ripe to introduce a 
statement which will automate this process. 

FOR-NEXT Loops 

I prefer to introduce a new statement with a problem. The 
purpose of this problem is twofold-to introduce the new 
command FOR-NEXT and to exercise the problem solving 
process. 

Donald Piele, Associate Professor of Mathematics, University of Wisconsin- 
Parkside, Kenosha, WI 53141. 



Problem #3 (Beginning Students) 

Write a small program (less than 10 statements) that will fill 

the screen with a single color. 

Discussion: 

There are two similar ways to view this problem. One 
strategy is to first color the positions in a given row left to 
right, and then to repeat the procedure for each row from top 
to bottom. The other strategy is to begin by coloring a 
column from top to bottom and then to repeat the procedure 
for each column from left to right. Both strategies involve the 
use of subgoals. Using the first strategy, the subgoal is to 
create a procedure for coloring a row. This can be done with 
a FOR-NEXT loop as follows. 



COLUMN 



1 



3 4 



39 



R 


W 



o 

1 



39 




10 


GR 


20 


COLOR-9 


30 


FOR 1=0 TO 


40 


PLOT 1,0 


50 


NEXT I 


60 


END 



39 



I usually key in this program, run it, and begin asking 
questions. 

1. List all the points that are plotted. (0,0 1,0 38,0 39,0) 

2. How can I change the program to color the second row? 
(40 PLOT 1,1) 

3. How can I change the program to color the last row? 
(40 PLOT 1,39) 

4. List the diagonal positions from the upper left corner to the 
bottom right corner. 

(0,0 1,1 2,2 ....39,39) 

5. How can I change line 40 to draw the diagonal for me? 
(40 PLOT 1,1) 

6. List the positions in the first column. (0.0 0.1 ...0.39) 

7. How can I change the program to color the first column? 
(40 PLOT 0,1) 

8. How can I change line 40 to color the last column? 
(40 PLOT 39,1) 

When I began teaching Basic to third and fourth graders, I 
wondered if the use of variables, such as (I) in the above 
program, would be too abstract to be easily understood by 
young minds. My fears were quickly laid to rest as my stu- 
dents began to use variables with ease almost immediately. In 
fact, experiences with older students and adults have con- 
vinced me that the younger ones pick up the use of variables 
faster. I no longer keep any secrets from the younger set. 

There are two commands specific to the Apple II that 
make drawing horizontal and vertical lines even easier. These 
are HLIN and VLIN. To color the first row orange simply 
write: 

10 GR 

20 COL OR =9 

30 HLIN 0t 39 AT 

40 END 



66 



CREATIVE COMPUTING 



Similar questions and modifications can be made to this 
program. 

1. How can I change the program to color the last row? 
(30 HLIN 0,39 AT 39) 

2. How can I change the program to color the first column? 
(30 VLIN 0,39 AT 0) 

3. How can I change the program to color the last column? 
(30 VLIN 0,39 AT 39) 

HLIN and VLIN can be used to construct horizontal and 
vertical lines of length (1-40) anywhere on the screen. For 
example, to draw a line in row 3 beginning in column 5 and 
ending in column 12 write 
30 HLIN 5,12 AT 3. 

The following two programs illustrate two ways of con- 
structing this line. 



10 GR 


10 


GR 


20 C0L0R=9 


20 


C0L0R=9 


30 FOR 1=5 TO 12 


30 


HLIN 5, 12 AT 3 


40 PLOT 1.3 


40 


END 


50 NEXT I 






60 END 







COLUMN 



1 2 3 4 5 6 7 8 9 10 11 12 



39 



R 






1 



3 



39 



What changes must be made to the above two programs to 
produce a vertical line in column 3 beginning at row 5 and 
ending at row 12? 



40 PLOT 3, I 



30 



VLIN 5, 12 AT 3 1 



After giving the students what I consider to be enough 
experience with constructing lines, which are subgoals for 
problem #3, 1 prefer to say, "no more" and let the students go 
to work on the problem. Now they are the ones who will be 
asking questions — as it should be. I am available to answer 
\he\i questions about all commands and statements, but it is 
up to them to experiment putting them together to solve the 
problem. Here are two ways that it could be done. 



10 


GR 


10 


GR 


20 


COL OR =9 


20 


C0L0R=9 


30 


FOR 1=0 TO 39 


30 


FOR J=0 TO 39 


40 


HLIN 0,39 AT I 


40 


FOR 1=0 TO 9 


50 


NEXT I 


50 


PLOT I, J 


60 


END 


60 


NEXT I 






70 


NEXT J 






80 


END 



These two programs use the strategy of covering the screen 
one row at a time. The same programs can be used to cover 
the screen one column at a time with the following changes: 

C 40 VLIN 0,39 AT I 50 PLOT J, I D 

Intermediate Students 

The idea of representing natural numbers in different bases 
is fundamental in computer programming. The binary, deci- 
mal, and hexadecimal number system are introduced in all 
elementary assembly language programming books and in 
many Basic programming books. At the same time, the study 
of bases has diminished in mathematics textbooks along with 
other "new math" concepts. Lacking any immediate applica- 
tion and given the confusion it caused parents, the study of 
bases has become unpopular. 

But the idea of bases is fundamental in computer program- 
ming and can be introduced to young students with a few 
matchboxes. 

LJ LJ l_l L_l 



Box 4 



Box 3 



Box 2 



Box 1 




Find the best price you can in this magazine on a box of 10, 
Verbatim 5% inch Floppies and subtract $.50; THAT'S OUR 
PRICE — We include the shipping (please figure the com- 
petitor's shipping and handling charges in your 
computation).* Compare our prices on other equipment; if 
we're not the least expensive, give us a call. 

THIS MONTHS SPECIALS 



If 



SPECIAL #1 

you purchase the "TRS-80 DISK 



AND OTHER MYSTERIES" Book for 

the regular price of $22.50 

you can buy 10 VERBATIM DISKET- 
TES AND a plastic library case 

for $22.00 

TOTAL $44.50 



SPECIAL #2 

If you purchase APPARAT 
NEWDOS + for the regular price 

of $99.95 

you can buy 10 VERBATIM DISKET- 
TES AND a plastic library case 

for 5.00 

TOTAL $104.95 



■lank Diskettes 
Verbatim Sift" 
Verbatim 8" 

Verbatim 8" Double Density 
Alas 

Flippy Kit 

16K Ram Kit (200ns) 
Whistle Switch 
BSR System X-10 
BSR Modules 
Floppy Saver 

refills (25) 
Hard Hole Tool 

refills (50) 
Photo Point Light Pen 
Plastic Storage Box 8" 
Plastic Storage Box 5V*" 
Web T Beep 
Diskette Frames 
Plastic Diskette Sheets (10) 
Software 

Apparat Newdos-t- 

35tr 

40tr 
WEB TSHORT 
Electric Pencil 
Dungonquest 
•OFFER good as supply lasts. 



PRICE 



$26.50 
30.00 
44.00 

11.95 

69.00 

23.95 

74.95 

13.95 

11.95 

6.95 

4.00 

9.95 

19.95 

3.00 

2.50 

19.95 

4.00 

8.95 



88.00 
98.00 
9.45 
CALL 
CALL 



LIST 

Fast Gammon 
Securities Graphics 
Job Costing Package 
Complete accounting 

package for MODEL I 
MODEL- II 
Hardware 
TI-99/4 
SOROC IQ120 
SOROC IQ140 
CENTRONIX 730 
ANADEX DP 8000 
PAPER TIGER 
QUME 5/45. 5/55 
LEEDEX VIDEO 100 12" 
SHUGART SA 400 (35 

track same as Tandy) 



CALL 
29.95 
74.95 



and 



CALL 

880.00 

775.00 

1125.00 

750.00 

855.00 

CALL 

CALL 

124.95 

349.00 



22.50 








TRS-80 Disk and Other 
Mvsteries 

Supplies 

9'/," x 11" Paper. 11" x 14" 
Paper, Labels, Forms; Print 
wheels, print thimbles and 
ribbons for DIABLO, QUME, 
NEC, Tl and others 

Sand for FREE catalogue 

Fraa shipping for orders ovar $20.00. 



CALL 



RUpris 

Eijia 
Slnrsga 





4636 Park Granada 
Calabasas, California 
91302(213) 883-8594 



NOVEMBER 1980 



67 



CIRCLE 104 ON READER SERVICE CARD 



Being a deaf dancer 
is really something. 







It looks like any other dance class. 
The dancers watch their movements in the 
mirror, giggle, make mistakes, master a 
position. Yet, Nancy Hlibok and the other 
students in this class at the Joffrey Ballet 
School are deaf. Physical response to the 
vibrations of the music, sign language and 
an inspiring teacher, Meredith Baylis, make 
it possible. 

The students take pride in their danc- 
ing. All are lively and determined. Some 
would like to become professional dancers. 

They probably Will. We love the same country. 

We care ah nit the same things. 
We dream the same dreams. 
1981. The Internatumal Year 
Of Disabled Perstms. 



President's Committee on 
Employment of the Handicapped 
Washingum, D.C. 20210 
The School of Visual Arts 
Public AdtvrtLsing S>stem 




Solve, cont'd. . . 

Suppose each box has the capacity to hold B matches. B is 
called the base for the number system and is usually express- 
ed as a decimal number. To express the numbers in base B in 
sequential order, begin by adding a match one at a time to 
box 1. As soon as any match box is filled (contains B matches) 
empty it and add one match to the next higher box on its left. 
To represent the number of matches in each box use the 
following symbols: 



Number of 
matches ■ 



0123456789 10 11 12 



36 



Sinsle symbol = 0123456789 



B C 



Each number is expressed in base B by writing the sequence 
of symbols associated with the number of matches in each 
box. For example, if the base B = 3, then the natural numbers 
would begin as 0001 , 0002, and change to 0010 as the first box 
filled up with 3 matches, was emptied, and one match was 
deposited in the next higher box (#2). 

It is an instructive programming exercise to implement this 
procedure on the computer. Arrays come in handy for stor- 
ing the number of matches in each box: 

B (I)= # of matches in Box I, 
and string arrays are useful for holding the symbols; 

S*= " 1 23456789ABCDEFGH I .JKLMNOPQRSTUVWX YZ " . 

(I have limited the size of the base to a maximum of 36 for 
practical reasons.) 

Problem #3 (Intermediate Students) 

Write a program that displays the natural numbers in base B 

in sequential order up to N digits. 

Plan of Attack 

Using the match box simulation, begin by depositing one 
match in box 1 ; 

100B(1)=B(1)-I-1. 
Next check the number of matches in box 1 and continuing 
adding matches to box 1 if it is not filled. 

IF B(l) <B THEN (print number and GOTO 100) 
As soon as the first box fills up, empty it and add one match 
to the next higher box (#2). 

B(1)=0 

B(2)=B(2)+1 
Continue adding matches to box 1. 

IF B(2) < B THEN ( print number and GOTO 100) 
Otherwise, empty the matches in box 2 and add one to box 3. 

B(2)=0 

B(3)=B(3)+1 
This same procedure is continued until a match finally reach- 
es box N+l. 
Here is a sample solution that implements this procedure. 



10 
20 
30 

40 
50 
60 

70 
SO 
90 
100 
110 
120 
130 
140 
150 
160 
170 
180 
190 



68 



First Sample Solution 

DIM S*(36) 

S*= ■ 1 23456789ABCDEFGH I JKLMNOPQRSTUVWX YZ " 

INPUT "BASE ='\B 

INPUT "N PLACES - ",N 

REM **»* GENERATE THE SEQUENCE OF DIGIT**«» 
B( 1)=B(1)+1 
FOR 1=1 TO N 

IF B(I)<B THEN EXIT 130 
B(I)=0 

B(I+1 )=B(I+1) + 1 
NEXT I 
IF B<N+1)>0 THEN END 

REM *#*» PRINT OUT 
FOR I=N TO 1 STEP -1 

PRINT S*( B(I)+1 , 
NEXT I 

PRINT 

GOTO 50 
END 

CREATIVE COMPUTING 



ROUTINE «*»* 
B(I>+1 ), 



Remarks 

1. For Microsoft Basic change S$(B(I)+1,B(I) + 1), in line 150 
toMID$(S$,B(I)+U); 

2. It is advisble to have the students add documentation at the 
beginning of their program to explain what the program is 
doing. 

For example, I require the following: 



l 

2 
3 
6 

7 



REM ##*#***»»■»■#■«•# PROBLEM #3 *■»■»»»*»»»•*• 

REM BY DON PIELE 

REM AUGUST 23, 1930 

PRINT "THIS PROGRAM WILL GENERATE AND PRINT THE" 

PRINT "NATURAL NUMBERS IN BASE B UP TO N PLACES." 



Another way to attack problem #3 is to use a coversion 
algorithm from the base 10 to the desired base B. To convert 
the number K into a base B number, first divide by B and save 
the quotient (INT (K/B) and the remainder (K — 
B*INT(K/B)). The remainder represents the value of the first 
"digit" (B(l)) and the quotient becomes the new number K. 
The process is repeated until K=0. For example, to convert 
53 into base 5, 

53/5= 10 remainder of 3 (=B(D) 
10/5= 2 remainder of 0(=B(2)) 
2/5= remainder of 2 ( =B(3)) 
Thus 53 (base 10)= 203 (base 5). 

This procedure can be implemented by changing lines 60- 
120 in the first sample solution and adding line 175. 

Program Modification for Second Solution 

60 K=C 

70 FOR 1=1 TO N 

SO B( I )=K-B»INT(K/B) 

90 K =INT<K/B) 
100 NEXT I 
110 REM 
120 IF K>0 THEN END 

175 C=C+1 

Related Ideas 

An unusual method for multiplying two numbers, said to be 
in common use in Russian villages around the turn of the 
century, is known today as the Russian Peasant Method. The 
only skills one needs to multiply with this method is to be able 
to add and divide by two. A description of the procedure is 
given below as it appeared in 1912 in The Mathematics 
Teacher. 

"Having given the positive integers A and B, to multiply A by 
B write down A x B; under A write the exact or lower 
quotient obtained by dividing by 2 (INT (A/2)); under this 
quotient write the exact or lower quotient obtained by divid- 
ing by 2, and so on until you obtain the quotient 1. Under B 
write its double, under this double its double, and so on, until 
you have as many numbers in the second column as in the 
first. Next add the numbers in the second column which 
correspond to odd numbers in the first column. The result is 
the product of A x B." 

Below is a specific example using 21x13 which illustrates 
the technique. 

A B 



Doubl e 



21 x 13 = 13 + 52 + 208 = 273 

The product (21 x 13)9 is equal to the sum of all the values in 
column B (indicated with a *) which correspond to odd values 
in column A. 

NOVEMBER 1980 





21 


X 13 


Divide 


10 


26 


bv 


5 


52 


Two < 


2 


104 




1 


208 




SUPERSCRIPT 

by Richard Wilkes 



With Superscript, one can underline . 
boldface, insert text, slash 8*8, 
subscript, set 10 pitch, set 12 pitch 
and of course Superscript. 

One can even get a Directory (?D) and 
can also kill a filel (Command K). 

Superscript has drivers for serial and 
parallel printers. 



MAKES IT BETTER 

Superscript is a series of machine language 
programs which permanently customize 
Scripsit* so that a number of additional 
features are available. These include: 

Ability to get directory or to kill files from 
within Superscript. TRSDOS or NEWDOS can 
read Superscript files. Text can be inserted 
into unjustified lines during printout e.g., 
inserting a name after "Dear" and before the 
colon. For this purpose a lowercase driver is 
included. 

On printers that can backspace, underlining 
and slashed zeroes (0) are options. On Diablo 
and NEC printers, one can superscript, 
subscript, underline, boldface and select 10/12 
pitch. 

Serial and parallel drivers are included on 
the disk. You can customize these drivers for 
use with other types of letter quality printers. 
The serial drivers are included which use the 
ETX/ACK protocol for 1200 baud 
communications. Furthermore, printer drivers 
can be protected in high memory. 

The "L" command used to load a file now 
requires a filespec to avoid destroying text 
buffer if the question mark is omitted from the 
"L" Command. 

Available on disk for TRS-80* Level II with 
32k, one disk drive and lower case 
modification for $29.95. See your dealer for 
this and other quality Acorn Programs. 

'TRS-80 is a trademark of Tandy Corp. 




DEALER INQUIRIES INVITED. 



*• 



n 



Software Products, Inc. 

634 North Carolina Avenue.S.E, Washington, D.C. 20003 
CIRCLE 101 ON READER SERVICE CARD 



69 



WE WILL NOT BE UNDERSOLD 



DISK DRIVES $314 

40 track, 102K Bytes. Fully assembled and 
tested. Ready to plug-in and run the moment 
you receive it. Can be intermixed with each 
other and Radio Shack drive on same cable. 
TRS-80* compatible silver enclosure. 90 day 
warranty. One year on power supply. External 
card edge included. 

5 1 /»", 40 Track (102K Bytes) for Model I $314 
5 1 /4 ", 80 Track (204K Bytes) for Model I $549 

8" Drive for Model II ( 1 / 2 Meg Bytes) $795 




FOR TRS-80* 

CCI-100 

CCI-280 

CCI-800 

For Zenith Z89 

CCI-189 

Z-87 



2 for $85 
$2.50 



$394 
$995 

$24 
$36 

$45 



5% ", 40 Track (102K Bytes) add-on drive 
Dual 5 1 /4 " add-on drive system 

DISKETTES — Box of 10 (5 V*")- with plastic library case 
8 " double density for Model II (box of 10) 

16K MEMORY UPGRADE KITS 

for TRS-80*, Apple II, (specify): Jumpers 

PRINTERS NEC Spinwriter 

Letter Quality High Speed Printer 

Includes TRS-80* interface software, quick 
change print fonts, 55 cps, bidirectional, 
high resolution plotting, graphing, propor- 
tional spacing: R.O. $2550 
R.O. with Tractor Feed $2650 KSR with Tractor Feed $2950 

779 CENTRONICS TRACTOR FEED PRINTER $969 

Same as Radio Shack line printer I 
737 CENTRONICS FRICTION & PIN FEED PRINTER $799 

9x7 matrix Same as Radio Shack line printer IV 
730 CENTRONICS FRICTION & PIN FEED PRINTER $629 

7x7 matrix Same as Radio Shack line printer II 
P1 CENTRONICS PRINTER Same as Radio Shack quick printer $269 
PAPER TIGER (IP440) Includes 2K buffer and graphics option $939 




(IP460) Bidirectional, 160 cps, graphics and 2K buffer 
TI-810 Faster than Radio Shack line printer III. Parallel and 

serial w/TRS-80* interface software w/u + I case & paper tray 

Compressed print, vertical form control 
OKIDATA Microline 80 Friction and pin feed 

Tractor Feed, friction, and pin feed 

Microline 83 Bidirectional, 120 cps, uses up to 15" paper 
EATON LRC 7000 + 64 columns, plain paper 
ANADEX DP-9500 $1359 DP-8000 

COMPLETE SYSTEMS 

ALTOS 64K, DD, SS, 2-Drive, 1MB 

APPLE 16K 

TRS-80* Model II-64K 

TRS-80* LEVEL II-16K with keypad 

TRS-80* Expansion Interface 

HEWLETT PACKARD HP-85 

ZENITH Z89, 48K all-in-one computer 

ZENITH Z19 

TELEVIDEO 912B $745 912C$755 

ATARI 400 $489 

APF Game Only $99 

MATTEL INTELLIVISION 



$1075 

$1589 
$1865 
$549 
$649 
$1050 
$299 
$825 



$3995 

$989 

$3499 

$689 

$249 

$2950 

$2500 

$735 

920B $769 920C $779 

ATARI 800 $749 

Complete System $499 

$229 



DISK OPERATING SYSTEMS 



PATCHPAK #4 by Percom Data 
CP/M" for Model I, Zenith $145 
NEWDOSPIus 
NEWDOS80 



for Model II, Altos 
40track 



$ 8.95 
$169.00 
$ 99.00 
$135.00 

$148 
$119 
$379 
$155 



CAT MODEM Works same as Radio Shack Telephone Interface II 

LEEDEX MONITOR Video 100 

ZENITH Color Monitor 

SANYO Model VM 4509 9 Monitor 

The CPU SHOP 

TO ORDER CALL TOLL FREE 
1-800-343-6522 

5 Dexter Row, Dept CC-11M, 
Charlestown, MA 02129 Hours: 10AM-6PM (EST) M-F (Sat. till 5) 
Mass. Residents: Call 617/242-3361, add 5% sales tax 
*TandyCorp.T.M.® Digital Research* Prices subject tochange 
DEALER (NATIONAL/INTERNATIONAL) INQUIRIES INVITED 

CIRCLE 141 ON READER SERVICE CARD 70 



master charge 




Solve, cont'd. . . 

Russian Peasant Problem (Intermediate Students) 

Write a program that uses the Russian Peasant Method to 
multiply two positive integers. Explain why the method 
works. 

Sample Solution (Russian Peasant Problem) 

1 REM ««** RUSSIAN PEASANT METHOD OF MULT **♦♦ 
10 S=0 

20 INPUT " A , B - ",A,B 
30 X=A 
40 Y=B 

50 IF X/2 <> INT(X/2) THEN S=S+Y 
60 X=INT(X/2) 
70 Y=2»Y 

80 IF X >= 1 THEN 50 
90 PRINT A," x'\B. " =",S 
100 END 

Note 

A justification for the Russian Peasant Method of multipli- 
cation can be given by: 

(1) expressing 4 in a base 2; 

21 (base 10) = 10101 (base 2); 

(2) using the appropriate powers of 2 corresponding to 10101 
to write; 

21 = 2 4 + 2 2 + 1. 
Thus, 21 x 13 =(16 H- 4 -h 1) x 13 = 208 -h 52 -h 13 = 273. 

Advanced Students 

The Russian Peasant Method can be used for numbers 
expressed in other bases besides 10. It can also be implement- 
ed for multiplying large positive integers when the digits are 
kept in an array. For example, if the product A x Z exceeds 8 
digits (or higher depending on the Basic used), it is nesessary 
to store the numbers in arrays and perform array arithmetic. 
This suggests an extension of the previous problem to the 
following. 

Problem #3 (Advanced Students) 

Write a program that uses the Russian Peasant Method of 
multiplication to multiply numbers, up to 20 digits in length, 
in any base B. 

Remarks 

1. This problem reguires an extensive use of subgoals which 
can be implemented with subroutines or by defining func- 
tions. 

2. The first task is to write a procedure which will transform 
any number into an array where each element of the array is 
written in base 10. Thus if A =123456789 A BCDEF (base 16), 
then the corresponding array A(I) is constructed as follows, 

A(1)=16,A(2)=15,A(3)=14, ... A(16)=l. 

3. A subroutine must be written that will test whether A is 
even or odd with respect to the base B. 

4. A subroutine must be written to double the number Z (in 
the array with respect to the base B. 

5. A subroutine must be written to divide A (in array form) by 
2 and test if A is less than 1. 

6. A subroutine must be written to print out the sum of all Z 
arrays corresponding to odd A arrays consistent with the 
Russian Peasant Method. 

7. Finally, it is advisable to make A the smallest number since 
successive divisions by 2 will reduce A to 1 more quickly. 
Thus, a procedure should be written to check the lengths of 
A and Z and to make A the smallest number if necessary. 

Listed below is a sample solution to this problem. I have 
intentionally written this program with subroutines instead of 
multiple-lined functions because the latter are not commonly 
available on the small personal computer systems. Also, for 
the sake of clarity, I have not attempted to combine routines 
that share common structures to save a few lines of program- 
ming. I have restricted the base Bto < = 10, but it could be 
expanded to 36 by changing the way the numbers are read 
into arrays and the way the product is printed out. 

CREATIVE COMPUTING 



Sample Solution to Advanced Problem #>: 



10 

20 

30 

40 

50 

60 

70 

SO 

90 

100 

110 

120 

130 

140 

150 

160 

170 

180 

190 

200 

210 

220 

230 

240 

250 

260 

270 

230 

290 

300 

310 

320 

330 

340 

350 

360 

370 

380 

390 

400 

410 

420 

430 

440 

450 

460 

470 

480 

490 

500 

510 

520 

530 

540 

550 

560 

570 

580 

590 

600 

610 



"RUSSIAN PEASANT METHOD FOR MULTIPLICATION OF A 
"A,Z LARGE WHOLE NUMBERS IN ANY BASE B <« 10 " 



SUBROUTINE TO TEST 



1 STEP -1 



INT(X/2) THEN C=0 ELSE C=B 



I \ RETURN 
**«*« SUBROUTINE TO ADD Z( 



INT(X/B) 



PRINT 
PRINT 
GOTO 360 
REM ***** 

oo 

FOR I=N TO 
X=A(I >+C 
IF X/2 = 
NEXT 
REM 
C=0 

IF M>K THEN K=M 
FOR 1=1 TO K 

X=S(I>+Z<I)+C 

R=X-B*INT(X/B) 

S ( I ) =R \ C = 
NEXT I 

IF OO THEN S(K+1)=C 
IF OO THEN K=K+1 \ RETURN 
REM ***»* SUBROUTINE TO DOUBLE 
C=0 
FOR 1=1 TO M 

X=2#Z(I> + C 

R=X-B*INT(X/B) 

Z(I)=R \ C = INT(X/B) 
NEXT I 

IF OO THEN Z(M+1)=C 
IF OO THEN M=M+1 \ RETURN 
REM »##»* SUBROUTINE TO DIVIDE 
C=0 \ T=0 
FOR l=N TO 1 STEP 

X=A(I)+C 

IF X/2=INT(X/2> 

A(I )=INT(X/2) 
NEXT I 

REM*********#******** MAIN 
DIM A* (20) , Z»(20) »T*<20)i A (20) 
INPUT " BASE = ",B 
INPUT " A = " ,A* 
INPUT " Z = " ,Z« 
N=LEN(A*) \ M=LEN(Z$) 
IF N>M THEN K=N ELSE K=M 
IF M>=N THEN 460 
T*=A* \ A*=Z* \ Z*=T* 
GOTO 410 
FOR 1= 1 TO N 

A(I)=VAL(A*(N+1-I,N+1-I ) ) 
NEXT I 
FOR 1=1 TO M 

Z(I)=VAL<Z*(M+1-I,M+1-I) ) 
NEXT I 
GOSUB 40 

IF OO THEN GOSUB 100 
GOSUB 200 
GOSUB 290 
IF T>0 THEN 520 
PRINT A*, " X " , Z*, " = " 
FOR I=K TO 1 STEP -1 

PRINT 8(1). 
NEXT I \ PRINT 
END 



x Z" 



FOR EVEN 
\ REM 



OR ODD ****** 

C = CARRY 



\ REM IF OO THEN A( ) IS ODD 

) TO SUM ***** 

\ REM C = CARRY 

\ REM M=LENGTH OF Z ( ) 

\ REM K=LENGTH OF SUM 

\ REM S( )= SUM 

\ REM R = REMAINDER 



Z ( ) ***** 



A( ) IN HALF (TO LOWEST INTEGER) 
\ REM T = TOTAL OF DIGITS IN A( ) 



-1 



THEN C=0 ELSE C=B 
\ t=T+A(I) 
\ RETURN 



P R G R A 
Z(40),S(40) 



M ********************* 



\ REM K - LARGEST LENGTH 

\ REM CHECK LENGTHS OF A AND Z 

\ REM EXCHANGE A AND Z 

\ REM PUT A* INTO ARRAY A( ) 



\ REM PUT Z« INTO ARRAY Z( ) 



\ REM TEST A< > FOR EVEN OR ODD 

\ REM IF ODD THEN ADD Z ( ) TO SUM 

\ REM DOUBLE THE ARRAY Z( ) 

\ REM DIVIDE A( ) IN HALF 

\ REM REPEAT UNTIL A( ) < 1 

\ REM PRINT THE PROBLEM 

\ REM PRINT THE ANSWER 



SAMPLE 



R U N 



RUSSIAN PEASANT METHOD FOR MULTIPLICATION OF A 
A,Z LARGE WHOLE NUMBERS IN ANY BASE B <> 10 

BASE = 10 

A = 123456789 

Z = 12345678987654321 

123456789 x 12345678987654321 = 



.>-. 



7 3 



1 1 



2 6 3 5 



6 9 



15 2 4 15 7 8 8 5 8 4 O 5 

BASE = 2 

A ■ 1010101010101010 
Z = 10101 10101 101 O 

1 1 1 101 1 O 1 1 x 1 O 1 1 1 O 101 101 = 
1110 111 Oil 0111 001 1 



1 1 o 



Remarks 

1. In Microsoft Basic lines 470 and 500 need to changed using 
the equivalence A$(I,I) =MID$(A$,I,1). 

2. To upgrade this program to handle any base B, the conver- 
sion routine (lines 470-510) and the output routine (lines 580- 
600) both need to be changed. □ 

References 

1) Bowden, Joseph, "The Russian Peasant Method of Multiplication" The 
Mathematics Teacher, Vol. 5, page 4-8, 1912. 

2) Dantzig, Tobias, Number, The Language of Science, Macmillan Publishing 
Company, New York, 1939. 

NOVEMBER 1980 




WHAT IF 

crime decreases 6.789% in January due 
to bad weather? How many officers will 
be needed for foot patrol? How many for 
radio cars? How many can go on 
vacation, sick leave, or coffee break? 
The chief wants answers fast! 

T/MAKER delivers fast! Just input the 
latest variables and T/MAKER 
manipulates the basic data to give me the 
new totals on my CRT screen. 

T/MAKER can then print out hard copy 
reports for all the precinct commanders, 
the mayor, the board of estimate, and the 
department of social services. 
Everyone's happy. 

T/MAKER is a wonderful tool for data 
analysis. It is easy to set up calculations 
for rows and columns of tabular data, 
automatically perform the 
computations, review the results and 
then modify some of the data to see the 
impact on the over all results. Several 
days of manual work can be 
accomplished in minutes. 

T/MAKER is a full screen editor for word 
processing which handles text up to 255 
characters wide. It includes features like 
text formating and justification, text 
buffer for block moves and repeated 
inserts, global search and replace and 
commands for printing your letters, 
reports and documents. 

T/MAKER can perform an unlimited 
number of analysis and reporting tasks 
which integrate numerical and text 
processing. For example: 

• Financial Statements • Balance Sheets 

• Statistics • Growth & Projections • 
Profitability Reports • Revenues & 
Expenditures • Portfolio Analysis • Price 
Lists • Rate Structures • Inventory 
Valuation and much, much more. 

T/MAKER requires a 48K CP/M system, 
a total of 240K bytes of disk storage, 
CBASIC-2, and a CRT computer 
terminal with cursor addressing and 
clear screen. 

T/MAKER system is $275.00 complete 
with documentation and quick- 
reference card. 
Documentation alone is $25.00. 



LIFEBOAT 
ASSOCIATES 

1651 Third Ave. NY, NY 10028 

(212) 860-0300 

International Telex 220501 

T/MAKER is a trademark 

of P. Roizen 

CP/M is a trademark 

of Digital Research 







circle 216 on reader service card 



71 



BATCH UPDATE/DELETE 

Update Files - (Transaction is #1) 
Files are*. l-B:TfcANSACT 2-B:CUSTGMER 3-B:INVNT0RY 

Batch Update Calls 

Call# Using: Filei/Name - Fieldf/Hame, Call: File#/Name - Field#/Name 

: 1 TRANSACT 1 CUSTOMER # 2 CUSTOMER 9 CUSTOMER # 

!: 1 TRANSACT 2 PART NUMBER 3 INVNTORV 1 PART NUMBER 

PROCEDURE 

L If QUANTITY of (TRANSACT) EQ then . . . 
SKIP 

TOTAL PRICE of TRANSACT-QUANTITY of TRANSACT*SELLING EACH of INVNTORY 
i 

YEAR-TO-DATE of CUSTOMER-YEAR-TO-DATE of CUSTOMER+TOTAL PRICE of TRANSACT 

ON-HAND of INVNTORY-ON-HAND of INVNTORY-QUANTITY of TRANSACT 




W - 



j*v 









The intimate Application Development System 



Nothing can compete with the brain when it comes to information 
storage capacity and speed of data entry and recall — but we're 
working at it. 

Our SELECTOR-IV™ data base management system will let your 
microcomputer operate with the flexibility available (up to now) only 
on larger systems. You can create, maintain and report on files 
limited in size only by your *CP/M™ compatible operating system or 
disk storage capacity. 

The basis of the power of SELECTOR-IV™ is our unigue method 
of cross-indexing the information in your files. You can immediately 
recall records by the contents of any piece of information reguired — 
from account numbers to ZIP codes to the date of your last audit. You 
can update records, individually or all at once. You can create new, 
uniguely, selected sub-files from existing ones (in the same or a 
different format), and perform computations in the process. You can 
define procedures to generate computed invoices, personalized 
letters, or gummed labels with the information coming from several 
files at once, and invoke them whenever needed. You can add new 
items to a record definition and change or delete them at will. 

*CP/M is a registered trademark of Digital Research. 

CIRCLE 154 ON READER SERVICE CARD 



We've come a long way since we released the first information 
management system in microcomputers. We've listened to your 
suggestions and incorporated the best of them. We've built screen 
editing functions into the system which make operating the system as 
convenient as possible. We've had SELECTOR-IV's™ documentation 
produced by our experts emphasizing its use for the novice, the ap- 
plications developer, as well as, the retailer. Our applications 
specialists can provide you with a "turnkey" SELECTOR-TV™ system 
customized for virtually any reguirement. 

With SELECTOR-IV™ and a .good 
word processor program, chances 
are you won't need any other software. 

Look for SELECTOR-IV™ at 
your local computer retailer, or call: 



,>*» **~ . y 



•*«• 



MICRO*AP, INC. 
9807 Davona Dr. 
San Ramon, CA 94583 
(415) 828-6697 

MICRO*AP 
















K 



'•■:■■/'•■■■'■'•■•■' 









? ■ ->.'•■ : 

!*£■ ■'-•■'• 

... 

I 

■» i • it hi 






'Mm 7* > 






■\':- 




' 



■ , 



-"': 
























! 

I 

... 



■ 

i ' : ; 



■ 



I ! ■ .:■-.; I 












^ 



: : : : 









i to; 1 



■■'-■ '' |i Nl!| I'- 1 ' •'i-llUi' Miff"' 1 I! 'I I III! i II 1 ]<]'' ; "' r Will 1 ' "Hlli 

'HUlHIIiii : ii : i!llll lilii- : i J !i ill"'!, li'ir "" ill' IH'i ill i ' n it •ill li 1 t'i jil' 



III"! ' : 



,i Ifffi 'IT: I 

ipi>, 

I li Hill |i| ! !, |!! 



•;»7I'™ in nrr/iiiiijj ! 

i 

>! 









N) 



^4 

(X) 



o 

3 






Symposium On Actor 

Languages (Cont'd From 
October) 

Brief Glossary 

of Actor - 
Related Terms 



Actor (Hewitt) software entity whose 
behavior is predetermined by the class 
of which it is an example. Receives 
messages and sends them; these 
messages may in turn set other Actors 
in motion. 

instance (Sutherland) original term for 
Actor. 

object Actor. 

class what an Actor is a member of. 

class definition the behavioral specifica- 
tion, or response list, stating what 
Actors of a given class do. In Actor 
languages, the class definitions are the 
programs. 

class editor program that allows you to 
change the class definition. In Actor 
languages, the only way to write the 
other programs is usually through a 
class editor. 

superclass class which takes in another 
class: all the responses of the super- 
class are shared by an Actor in the 
class underneath. 

inheritance the inclusion of a superclass' 
responses in its daughter class. If a 
superclass definition responds to 
message A with B, so do all Actors in 
classes beneath. 

control structure the means of transferring 
control amongst different parts of a 
program; in conventional languages, 
such commands as GOTO, IF, and 
the subroutine jump. 

flow of control the sequence in which a 
program is followed. 

hair (hairiness, hairy) disorderliness of 
control structure, as in such languages 
as Act I. 

demon (Selfridge) entity of predetermined 
behavior who responds to conditions 
of data. 

sprite (Kornfeld) demon with certain 
special features. 

workspace collection of programs and 
related data, stored all together as a 
unit. 

environment workspace and/ or operating 
system within which programs func- 
tion. 



Department 

Of Notatlonal 

Engineering 



That's what it says on the door of 
Drew McDermott, Yale professor of 
computer science. 

It's good for a chuckle if you know 
something about the zany and abstract 
world of computer languages. 

If you think more about it, it's very 
profound. 

A computer language is a way of 
writing directions to a computer. A 
language processor — the compiler or 
interpreter that carries out the directions 
written in that way — is secondary to the 
notation itself, which represents a way of 
taking apart problems and putting to- 
gether solutions. 

To find a notation for something is to 
represent a structure. The notation permits 
manipulation and the growth of under- 
standing. "Notational engineering" isn't a 
joke — it may be the rock bottom 
idea. □ 



Actor Language 
Bibliography 

1. Classics 

Ivan E. Sutherland, Sketchpad: A Man- 
Machine Graphical Communication Sys- 
tem. Ph.D. thesis, MIT, 1963. (Excerpted 
in Proceedings of the Spring Joint 
Computer Conference, 1963.) 

Alan Kay, The Reactive Engine. Ph.D. 
thesis, University of Utah, 1969. 

Marvin Minsky, "Steps toward Artificial 
Intelligence." Proceedings of the Institute 
of Radio Engineers, January 1961. 

Warren McCullough, Embodiments of 
Mind. MIT Press, 1965. 

Allen Newell and Herbert Simon, Human 
Problem Solving. Prentice-Hall, 1962. 

Ole-Johan Dahl and Kristen Nygaard, 
"SIMULA — an Algol-Based Simulation 
Language." Communications of the A CM, 
September 1966, 671-677. 

Wallace Feurzeig et al., Programming 
Languages as a Conceptual Framework 
for Teaching Mathematics: Final Report 
on BBN LOGO Project. Bolt, Beranek and 
Newman (Boston), June 1971. 

2. Actor-Language Concepts 

Alan Kay, "FLEX, a Flexible Extensible 
Language." University of Utah Depart- 



CONTINUED ON PG. 92 



What-OrWho 

-Is "Artificial 
Intelligence'' ? 



"Artificial intelligence" is no one 
thing. It is the cult — disguised as an 
academic field — of brilliant zanies who 
talk to each other about mental processes 
considered in the abstract. They talk and 
write about methods of search, reference, 
representation of the "real world" in data 
structures; about language design; about 
robots. They also program about these 
things. 

This group refers frequently to the 
"real world" — perhaps more than any 
other group — but in a way that makes it 
seem like somewhere else. 

You'll find them at MIT, Stanford, 
Carnegie-Mellon, Case, Utah, Caltech, 
PARC, and wherever science-fiction fans 
talk fast about mathematics. They also do 
a lot of eccentric computer programming. 

Many of these people believe their 
goal is to create intelligent (and possibly 
conscious) entities: new beings that will 
populate the world of the future — either 
living amongst humanity or replacing it 
(the radical view). This is not the only goal. 

The patrons, for instance, have 
concerns of their own. The patronizing 
patronage of the Defense Department and 
the Intelligence Community is based on 
eagerness for the real or fancied products 
of these endeavors — automatic transla- 
tion of what is written or spoken in Enemy 
or Third World lands; ways of automati- 
cally scanning satellite photographs for 
missiles, tanks, etc.; things a cruise missile 
can scan the radar or TV for on its merry 
way to a target planned in advance. 

But there are many other goals. For 
instance, radical changes in education. The 
AI freaks tend to be brilliant people from 
well-to-do homes who hated school, in 
part because they were much smarter than 
their teachers, and who hold an idealized 
view of how wonderful education could be 
if only we could free children from its more 
oppressive aspects. 

A few maverick AI people are 
obsessed with comparing their ideas to 
empirical reality. Now this minority is 
breaking away to form a coalition with 
psychologists under the name "cognitive 
science." But sections of the field have 
broken off before, and many others will 
again. Artificial Intelligence is the great 
glacier from which so many other icebergs 
have broken off; the remainder will always 
be immense. 

CONTINUED ON PG. 90 



74 



CREATIVE COMPUTING 



An Actor -Based 

Animation 
Language 



Kenneth M. Kahn 

Originally circulated as Al Working Paper #120 
and Logo Working Paper #48. This work was 
supported in part by the National Science Foundation 
under grant number GJ-1049 and conducted at the 
Artificial Intelligence Laboratory, a Massachusetts 
Institute of Technology research program. Reproduc- 
tion of this document in whole or in part is permitted 
for any purpose of the United States Government. 

Section I. Introduction 

Some of the recent A I languages are 
based on a new view of computation 
sometimes called "actor" semantics. Carl 
Hewitt's PLASMA ([Hewitt 1975] and 
[Smith 1975]) and Alan Kay's SmallTalk 
[Goldberg 1974] are the best examples. 
The basic idea is to consider each entity 
within the system as something that is 
usually anthropomorphized as a "little 
person." Each "little person" or "actor" 
can receive messages asking it to do 
something, remember something, recall 
something, or send some messages to other 
actors. For animation this seems an ideal 
way to represent objects on the display. 
Each object is a process that can be 
arbitrarily smart. Charlie Brown can be an 
"actor" that can be told to walk, causing 
him to send the appropriate messages to 
his arms and legs and moving the rest of his 
body. 



Ken Kahn, Computer Science Department. University 
of Stockholm, Stockholm, Sweden. 



CONTINUED ON PG. 76 



Programming 

And 
Animating On 

The Same 
Screen At The 

Same Time 

Paul Pangora 

I think there is much more work to be 
done in the area of matching the pro- 
grammer's approach to the software 
environment, and I spread this philosophy 
whenever I can. My focus in this article is 
the importance of matching the concept of 
a system to a sensible programming 
structure, for ease of translation from idea 
to executable software. 



Paul Pangaro, 212 East 48th, New York, NY 10017. 



CONTINUED ON PG. 86 



Erratum 

If you are saving our October issue, 
please change the word "Smalltalk" on 
page 66, column 2, paragraph 4, line 1 
to "Sketchpad." You probably under- 
stood it anyway. 



We asked Adele Goldberg who 
should be credited with Smalltalk, 
and here is what we got back: 

Smalltalk development: 

We would like to credit the 
members of the Xerox Palo Alto 
Research Centers on whom the ideas 
and their realizations depend, but this is 
a much shorter list than "everyone" due 
to space limitations. 

This is a list of the current 
members of the Learning Research 
Group, Systems Science Laboratory, 
Xerox Palo Alto Research Centers, in 
alphabetical order: 

Jim Althoff, Al Burning, Peter Deutsch, 
Robert Flegal, Adele Goldberg, Ixtura 
Gould, Bruce Horn, Dan Ingalls, Ted 
Kaehler, Alan Kay, Glen Krasncr, Kim 
Me Call, Diana Merry, Janet More land, 
Steve Putz, Dave Robson, Steve Wever. 

Past Heroes: Karla Garcia, Chris 
Jeffers, John Shock, Ixirry Tester, 

Students: Barbara Koalkin, Vicky 
Parish, Steve Puree II, Bob Shur, Dave 
Smith, Todd Snook, Jim Stamos, Fred 
Tou. 



"Three Smalltalks" by Mark Miller, 
cited last month as appearing in 
this issue, has been withdrawn at 
the request of interested parties. 
We hope to be able to publish it 
at a later time. 



It is not generally realized that the 
great French cartoonist Grandville 
(1803-1847) clearly foresaw the Actor 
languages. We present here the basic 
concepts as he saw them. 



1 . Recursive Graphics 
(from La Vie des Animaux) 




NOVEMBER 1980 



75 



Actor-Based, cont'd... 



x^ 




I have implemented a system in Lisp- 
Logo [Goldstein 1975] which enables one 
to define new objects, new object types, 
and the kinds of messages they can handle. 
For example, one can easily create a square 
named "George. " George can be told many 
kinds of things like his size, speed of 
movement, or speed or rotation. George 
can be asked to do many things, all the 
things that turtles can do (FORWARD, 
BACK, RIGHT, LEFT, HIDE, SHOW, 
PENUP, etc.) plus new acts like growing, 
or changing appearance. George can also 
be taught new things, or can be told to 
behave in ways other than his defaults. 
George also has a memory; you can tell 



2. Hairy Control Structures 
(from Un Autre Monde) 

George anything at all, his color, his 
friends, whatever. 

One very important thing that George 
knows (though like everything in the 
system he can be told otherwise) is that he 
is a square. Presently, "Squares" know a 
few things, like how to draw themselves, or 
that after rotating 90 degrees that they look 
the same. Squares in turn know that they 
are instances of "Object." Objects know 
how to do the turtle-like things mentioned 
above. Objects, in turn, know that they are 
instances of "Something," things that can 
receive messages, can pattern match those 
messages, and can perform memory 
functions. "Somethings" know how to 
learn new responses to new patterns. This 
entire hierarchy is very flexible and 
modifiable by the user. The basic process is 
the message is sent to some individual, 
"George," and if George has no patterns 
that match the message, he sends it off to 
the actor that he is a kind of. They in turn 
pass the buck, until either someone can 



handle the message, or an error message is 
generated. This is also a very useful default 
mechanism; if George is never told his size 
he can inherit it from "Square" or 
"Object." 

Another feature of this system is the 
ability to have many different actors move 
on the screen with apparent parallelism. 
George can race against Sally. Danny's 
garden of flowers can be grown [Hillis 
1976]. A stick figure can simultaneously 
move different limbs and change its facial 
expression. "Movies" (or a list of display 
commands) can be produced that can be 
run forward or backwards at any speed the 
computer system is capable of or single 
stepped. 

This system is intended to support the 
intelligent computer animator which is 
discussed in the companion AI Working 
Paper 1 19 (Logo 47) and, equally impor- 
tant, to be used by children. The system is 
hopefully a more powerful and natural 
means for doing simple programs for 
animation. The powerful ideas of "in- 
stances, classes and finding of the correct 
level of generality" and the "little person 
model of computation" are imbedded into 
the system. The hope is that through well- 
guided use of the system, some of these 
ideas will become more concrete to the 
children. Of course, all the usual reasons 
for teaching Logo to children remain in 
force (e.g., learning by doing, experience 
with debugging, becoming articulate in 
describing processes, and exposure to and 
assimilation of powerful ideas). The use of 
the same actor-animation system by 
children and by the computer animator is 
very important for making the computer 
animator more accessible and under- 
standable by the children using it. The idea 
is that if the children who programmed 
using the actor-an\maUo*\ system found it 
natural and intuitive then its use in the 
intelligent system would also be clear. 

This view of programming as collec- 
tions of actors, or a community of "little 
people," that send and receive messages 
from each other is very powerful. It is 
conducive to a modular, simple, natural 
representation of the knowledge needed 
for the application. Using an actor system 
one can model intelligence as an integrated 
community of rather limited individuals or 
in the more conventional manner as an 
integrated individual. 

Another AI aspect of this system is the 
explicit "kind-of" hierarchy of actors. 
Each object is told what class it is a 
member of when it is created. When any 
object receives a message it cannot handle 
it passes the problem on to the class of 
which it is a member. The important 
concepts of instantiation, class member- 
ship, exceptions, placement of knowledge 
at the best level of generality, and 
inheritance of properties hopefully will 
flow from the proper use of this aspect of 
the system. 



76 



CREATIVE COMPUTING 



To both facilitate the use of the system 
and to give the user a good start in what is 
hopefully the right direction, the top nodes 
of the hierarchy can be predefined. 
Currently the default hierarchy consists of 
an actor called "Something" at the top 
node. "Something" can receive messages to 
remember, forget, replace or find items. It 
receives messages for editing actors 
including ones to insert, remove, replace, 
interchange or correct receivers. It also can 
create new instances of actors, print out the 
script and memory of an actor, and accept 
messages to be done at a later time. 
"Object" is an actor directly below 
"Something" and as such inherits all of its 
abilities. 

In addition "Object" can behave like a 
Logo turtle on the tv display. "Objects" 
also can move across the screen at a 
particular speed, can rotate at any speed, 
can revolve around a point, move away 
from a point, grow and shrink. "Object" 
also remembers various items such as its 
rotational speed, size, and speed thereby 
providing default values to all its inferiors. 
There are other sub nodes of "Something" 
such as "Movie" and "Universe" which are 
discussed later. Under development are 
"Composite-something" and "Composite- 
object" which know how to send appro- 
priate messages to their parts. In the 
following examples "Rocket" and 
"Flower" which are instances of "Object" 
are used for illustrative purposes. 

Section II. An Example 

ASK ROCKET (MAKE FRED) 

ASK is the basic message passing 
command, in this case the message "Make 
Fred" is being sent to the actor "Rocket." 
"Rocket" does not know how to handle 
messages of this form so it passes the 
message to "Object" who is also ignorant 
of such messages. The message is finally 
sent to "Something" which can match the 
message with one of its patterns and it 
creates a new actor named "Fred" which is 
a kind of "Rocket." 




Fred is asked to show himself. He 
knows nothing about "showing" and asks 
"Rocket" who asks "Object" which can 
handle the message. It asks Fred what 
turtle procedure draws him and Fred 
doesn't know so asks Rocket who answers 
with the name of a standard Lisp (or Logo) 
procedure. It then asks Fred for his 
position, heading and size and then 
invokes the Lisp (or Logo) procedure. 



RSK FRED (APPEAR FORWARD 50 



A 



k 



ASK FREO (00 ALL PLANNEO FOR 

NEXT TICK HITH UNIVERSE-1) 



"Object" is passed this message via 
"Fred" and "Rocket" and Fred is asked to 
Hide and then to appear at the place 50 
steps forward. The word "APPEAR" is 
there to distinguish this type of message 
from those in which the movement is 
gradual as described later. 




Again "Object" handles this type of 
message and Fred is asked to Hide, then to 
rotate to the left 120 degrees and then to 
show. 




This time Fred is told to go forward, 
so he asked for his speed; he has none in 
this example and asks "Rocket" for his 
speed, which is 25. He then is asked to 
(APPEAR FORWARD 25) and to plan 
on continuing the rest (50) on the next tick 
of the "clock." 

ASK FRED (WHAT SPEED ?) 

25 

In responding to the previous message 
Fred was asked what his speed was. Fred, 
as is true of all "Somethings," has a 
memory. This memory is a general 
relational data base and it is also used to 
maintain the state of actors. The message 
"What ..." indicates that the value found 
to is to be returned. 

ASK FRED (REPLACE SPEED 50) 

Fred is asked to remove the item 
about his speed (there is none in this case) 
from his memory and to remember the 
item "(SPEED 50)." 



A 



Fred is asked to do all the things that 
he had planned to do on the next "clock" 
tick. 1 He asks himself what things he had 
planned then and does them. In this case 
the only thing that was planned was 
"(FORWARD 50)" which was left over 
from earlier. Since his speed is now 50 he 
can do it all and appears forward 50 steps. 
"Universe- 1" is an actor that can be asked 
for all the other actors that are currently on 
the screen, so that interactions are 
possible. For example, collision or 
avoidance can be implemented by asking 
the other actors where they are and maybe 
even where they are planning on going. 




Fred is told to grow, which causes a 
message to be sent to him to hide, then to 
replace his size with his old size plus 25 and 
finally to reappear again. 




Now when Fred is told to do anything 
an image of him with his new size moves. 



I) To some people this wordy style of programming is 
distasteful. I could just as well have defined the 
message to be "(TICK UNIVERSE- If. It is very 
important, however, that the code be as clear and 
easy to read as possible. The difficulty in typing can 
be overcome by simple human engineering aids; 
for example, a special "help" button which, when 
pushed, could finish the line to the extent possible, 
saving much typing and preventing misspellings. 



NOVEMBER 1980 



77 



ASK ROCKET '(IF RECEIVE SHOOT MISSLE WITH SPEED 7SPEED TO GO 7DISTANCE THEN 
OO-THE-FOLLOWING: 

ASK ROCKET (MAKE MISSLE) 

ASK MISSLE (REPLACE SPEED :?SPEED) 

ASK MISSLE (REPLACE SIZE (QUOTIENT 

(ASK :SELF (WHAT SIZE ?)) 
4)) 
ASK MISSLE (REPLACE STATE (ASK :SELF (WHAT HERE ?))) 
ASK MISSLE (SHOW) 
ASK MISSLE (FORWARD : 'DISTANCE THEN HIDE)) 



The behavior of any actor in the 
system can be extended. The "if receive ..." 
message is matched by "Something" which 
adds a new receiver to the actor that 
received the message. In this case, 
"Rocket" is sent the message asking it that 
if it receives any messages of the form: the 
word "shoot" followed by the words 
"missle with speed, "then any word, then 
the words "to go" followed by only one 
more word, 2 then call the first word 
"?speed" and the second word "'.'distance." 3 
Then do the following series of things: 

1. create a rocket named "Missle" (it 
is possible to make the name "Missle" local 
to this receiver or to have a unique name 
generated) 

2. ask the newly created "Missle" to 
replace its speed with the number that in 
the message that corresponded to the word 
"7SPEED" in the pattern (a fancier version 
could easily add the rocket's present speed 
with "speed") 

3. replace the size of the missle with 
1 / 4 of the size of the actor that received the 
message which is always called "self." 

4. replace the state of the missle with 
the state of the actor receiving the message; 
this way the missle appears where the 
shooter is, rather than the default which is 
the center of the screen. 

5. the missle is asked to show itself. 

6. it is told to go forward the last word 
in the message. 

7. finally, it is told to hide when the 
finished moving forward (a fancier version 
might explode). 



RSK FREO 
(SHOOT HISSLE WITH SPEEO 180 TO GO 200) 




ASK FREO 
(SHOOT MISSLE WITH SPEEO 180 TO GO 200) 




Fred is given this newly defined type 
of message and then asks "Rocket" to try 
to handle it. It can, and the above 
procedure is executed with the speed of the 
missle being 100 and the distance it is to 
travel being 200. 

ASK FLOWER (MAKE SALLY) 
ASK SALLY (REMEMBER SIZE 50) 




A flower named Sally is created, given 
a size and asked to show. 

Now we can use "Flower" and 
"Rocket" to make a little animated movie. 
Suppose we want a movie in which Sally 
the flower is just peacefully swaying back 
and forth in the wind. Then Fred the rocket 
flies by and shoots a "Missle" at Sally. Fred 
flies away and the "Missle" heads right 
towards poor Sally. As a surprise ending, 
however, the missle could be filled with 
water and Sally could grow larger as she 
continues to sway in the wind. 

ASK SALLY 

(PLAN: SWAY 10 DEGREES 

12 TIMES NEXT) 



PSK FREO 
(SHOOT MISSLE WITH SPEEO 188 TO GO 200: 




ASK FREO 
(SHOOT MISSLE UITH SPEEO 100 TO GO 200) 



A 



"Flowers" can be asked to accept 
"sway" messages which cause them to go 
left and then right the specified number of 
degrees. The "Plan:" part is the same kind 
of message that "Forward" produced 
previously. Sally does nothing on receiving 
this message other than remember to do it 
with the next tick of the "clock." 

ASK FRED 

(PLAN: FORWARD 300 NEXT) 

ASK FRED 

(PLAN: SHOOT MISSLE WITH 

SPEED 50 TO GO 150 NEXT) 

ASK FRED 

(PLAN: RIGHT 90 THEN SHRINK 100 

AFTER 2 MORE TICKS) 

ASK SALLY 

(PLAN: GROW 60 AFTER 

6 MORE TICKS) 

More events are scheduled, such as 
Fred being told to begin going forward 300 
steps and then shoot a missle with a speed 
of 50 to go 150 steps. Two "clock" ticks 
later Fred will start to turn right 90 and 
when finished turning will shrink away. 
Notice that he will be turning while he still 
has some steps to go forward and thus will 
plot a polygonal course. Six frames into 
the movie Sally will begin to grow. (The 
numbers of ticks in this example were 
chosen simply because they caused things 
to happen at the right time. Much of this 
would become simpler if one could plan 
events relative to other events. This is a 
problem I hope to tackle soon.) 

ASK MOVIE (MAKE SHOOTING 
12 TICKS LONG IN UNIVERSE-I) 

Here "Movie" is asked to make a 
movie called "Shooting" that is 12 frames 
long. It in turn asks "Universe- 1" to send to 
a "tick" message to all the actors with 
things planned. It will stop either after 12 
ticks or sooner if no more things are 
planned. The "Screen" asks "Shooting" to 
remember each display command in 
addition to doing them, so that they can be 
played back at a speed that is not limited by 
the time it takes to send and interpret all 
the messages. 

ASK SHOOTING (SHOW) 

"Shooting" is asked to show its record 
of the running of the display commands it 
remembered when the movie was made. 
Stills from the movie can be seen in Figure 
A. (See Figure A on page 80.) 




2) If the pattern was SHOOT MISSLE WITH 

NUMBERP 'SPEED TO GO NUMBERP 

•'DISTANCE then it will match only if the 

words following "SHOOT' and "GO" are numhers. 

3) The ":" in front of the names is a convention neces- 
sary to be compatible with lisp-Logo. It is also 
used in messages to indicate that the value of the 
atom, not the atom is intended. 



78 



CREATIVE COMPUTING 



Chief 



You can be more than a mere spectator 
of the presidential campaign. Hail to the 
Chief lets you step into the center of the 
1980 election and manage your own 
campaign. You hammer out your own 
strategy, week by week. As you watch 
your progress in the weekly polls you 
appear on television, travel and advertise 
your positions, raise funds and hold 
debates and news conferences. 





The object of the simulation is 
to become president-elect when 
the final election results are in. 
Refinements of the simulation 
such as the influences of in- 
cumbency, campaign finance and 
spending limits are introduced in 
increasingly complex models. 
Each model can be played at ten 
levels of difficulty— a level 10 
opponent is tough to beat. 

This is a straightfoward sim- 
ulation, without scenarios of 
blatent corruption, but tempta- 
tions to compromise your ideals 
are still realistic and powerful... 



**;/ 



The ten pivotal camgaign is- 
sues in Hail to the Chief include 
Energy Policy, Unemployment, 
Mid-East Policy and Strategic 
Arms Limitations. Your positions 
are chosen from a nearly two 
hundred degree numerical scale 
which ranges from "Bleeding 
Heart Liberal" to "Middle-of-the- 
Road" to "Reactionary". For ex- 
ample, strong conservative and 
liberal statements on Strategic 
Arms Limitations are: 

Our enemies understand only 
strength and they have proven 



Hail to the Chief has been used 
as a teaching aid in Political 
Science, Computer Science and 
Voting Behaivior courses at the 
University level since 1976. Its 
authors are Associate Professors 
at the Eastern Kentucky Uni- 
versity; Phillip W. Brashaer in 
Mathematics and Richard G. 
Vance in Political Science. A 
comprehensive manual, discus- 
sion questions and background 
materials have been prepared by 
the authors and accompany the 
fun and educational package. 
Hail to the Chief is available for 
the TRS-80 level II on a 32K 
cassette (CS-3205) and a 48K disk 
(CS-3701), for the Apple II and 
Apple II Plus on a 48K disk 
(CS-4704), for the Atari 400 and 
800 on a 32K cassette (CS-7201) 
and for the Atari 800 on a 40K disk 
(CS-7701). All are $24.95. 



IRI 



m #-'•» 



Your local computer store 
should carry Creative Computing 
Software. If your favorite retailer 
does not carry the software you 
need, have him call in your order 
to 800-631-8112. Or, you can 
order directly from Creative Com- 
puting. Creative Computing Soft- 
ware, Dep't. AHGG, P.O. Box 
789-M, Morristown, NJ 07960. 



labor of Big Business? Or play 
down your unpopular positions to 
capture the votes of a particularly 
important and sensitive region? 
As in real life, the presidency can 
be captured by integrity or guile. 
Only the candidate knows the 
price of his, or her, success. 



path toward world domination. 

An uncontrolled arms race is 
more likely to lead to war then 
any other policy the U.S. can 
follow; it is also a waste of our 
resources and puts too much 
power in the hands of the military 
industrial complex. 



in your bank card order toll free to 
800-631-8112. 



sensational 

software 



CIRCLE 300 ON READER SERVICE CARD 



ASK SHOOTING (SHOU) 



ASK SHOOTING (SHOU) 




ASK SHOOTING (SHOU) 



Section III. 

How to Grow a Flower Garden 

In a paper by Danny Hillis called, 
"Ten Things to do with a Better Com- 
puter, "he has an example of how to grow a 
garden in an actor-like system [Hillis 
1 976]. He describes a garden in which seeds 
are born, wait, grow into flowers, create 
new seeds, continue growing and die. 

In my animation system, his garden 
can be implemented in a fairly straight- 
forward manner as follows: 

TO DEFINE. FLOWER 

Logo syntax can be used if my system 
is loaded into Lisp-Logo 
10 ASK OBJECT (MAKE FLOWER) 
20 ASK FLOWER (REMEMBER 
SIZE 10) 

This tells flower to remember that the 
default size of flower is 10. "Remember" is 
the standard kind of message for telling 
anv actor to remember something 
30* ASK FLOWER (REMEMBER 

DRAW USING DRAW-FLOWER) 

This tells flower that the Logo 



Figure A. 
Scenes from the "Shooting" Movie. 



procedure called "draw-flower" is to be 
used to draw instances of "Flower." 
END 

TO DEFINE.SEED 

10 ASK SOMETHING (MAKE SEED) 
Seed is not an Object, since it does not 
do turtle-like things. 
20 ASK SEED (IF RECEIVE ?SEED 

(START) THEN DO.SEED.THING 

:?SEED) 
This simply lets seeds take a "start" 
message and then calls the appropriate 
procedure. 
END 

TO DO.SEED.THING :SEED 
10 LOCAL A. FLOWER 

A local name for the flower that seed 
will spawn is needed. 
20 ASK FLOWER (MAKE 

A. FLOWER) 
30 ASK A.FLOWER (APPEAR 

RIGHT 90) 



Flowers are "Objects" and so can take 
any turtle-like command. 
40 ASK A.FLOWER (APPEAR 

FORWARD (* 100 (RANDOM))) 
50 ASK A.FLOWER (APPEAR 

LEFT 90) 
60 ASK A.FLOWER (PLAN: SHOW 

IN 10 TICKS) 

The message transmission ASK 
A.FLOWER (SHOW) will occur after 
"A. flower" has received 10 "Tick" mes- 
sages. 
70 REPEAT 15 (ASK A.FLOWER 

(PLAN: GROW 10 AFTER 2 

MORE TICKS) 

This schedules the call, ASK 
A.FLOWER (GROW 10) 
15 times, each time 2 ticks after the last. 
80 ASK SEED (PLAN: ASK (SEED 

(MAKE)) (START) AT THAT TIME) 
This means at that time create another 
seed and tell it to start at the same time as 
the last thing scheduled, which was after 
line 70 was run. 
90 ASK A.FLOWER (PLAN: HIDE 

AFTER 60 MORE TICKS) 
END 



80 



CREATIVE COMPUTING 



^ "PROGRAM STORE 



(202) 337-4691 



4 200 Wisconsin Ave NW PQBox960° Washington DC. 20016 



Osborne & 
Associates 



m& 



TING 



TRS-80 

16k Level II 

Programs 




Unbelievable Realtime 3D Graphics! 



For two years we have looked for good 
business accounting programs. After 

reviewing many over-priced or 

non-functioning packages, we have finally 
found some excellent software. And it is 
available at a reasonable price - $25.00 per 
package. 

These programs are the Osborne 6 
Associates systems which are copyrighted 
by Taranto & Associates. They are ex- 
cellent programs which have been used for' 
several years. Originally written for other 
computer systems, these programs are now 
available for the 48k Model I TRS-80 with 
two disk drives. 

These programs are not games. They 
are meant to adapt to your accounting 
system. You should not expect us or this 
software to be your accountant. But, if 
properly used, you will save hours of valu- 
able business time. 

All Osborne & Associates programs are 
fully documented by their three extensive 
books - "General Ledger," "Accounts Pay- 
able £ Accounts Receivable," and "Payroll 
with Cost Accounting." (These TRS-80 
programs do not include the cost accounting 
system. The General Ledger does contain a 
Cash Journal.) These books are available 
for $20 each. Please include $3.00 per book 
for first class shipping (otherwise sent 
U.P.S.). 

Act today! 

General Ledger $25.00 

Accounts Receivable $25.00 

Accounts Payable $25.00 

Payroll $25.00 

Any book $20.00 



* v 



- 
1 



» 




SUPER NOVA 

by Bill Hague from Big Five « 

Asteroids* surround your ship. Shoot 
the asteroids and the alien ships. Written 
in machine language, this game is GREAT! 
There are five different types of alien ships 
including the very deadly Flagship. You 
shoot from your ship, rotate it, use your 
thrust key to move, and in emergencies you 
go into hyper space. Level lor2-$14.95* 



2SJ3t 



♦ 1519 



wow mom 

ffflifftiffliittiiffliiftrftfChfBifft 
lOifflifOiifhfOtfOifQiiftiOifOi 

nnirnnnnnnnfinnniTnnTirin 



GALAXY 

INVASION 

by Bill Hague from Big Five 

"Galaxian" is the rage at the arcades. 
Now GALAXY INVASION is the rage on the 
TRS-80. The aliens move about the top of 
the screen and will smoothly swoop down on 
you. But watch out for the Flagship 
Alerts! Level 1 or 2 - $14.95 
(P.S. This ad almost did not get finished 
due to Galaxy Invasion addiction. ) 



FLIGHT 
SIMULATION 

by Bruce Artwick from Sublogic 

The wait is over! If 3-D graphics seem 
impossible on the low resolution TRS-80, 
you haven't seen this brilliant program. 
During FLIGHT SIMULATION, you instant- 
ly select instrument flight, radar, or a 
breathtaking pilot's-eye-view. But be sure 
to strap yourself in — you're liable to get 
dizzy! 

Once you put in some air time learning to 
fly your TRS-80, head for enemy territory 
and try to bomb the fuel depot and airstrip 
while fighting off five enemy warplanes. 
Good luck! 
Level I or 1 1 protected cassette $25.00 



■ X 
XXXXI 
X XXX 
X XXX 
■ X 



OTHELLO 

from Instant 

We have long looked for a good Othello 
playing program. This is it! The program 
has seven levels of play and it will let you 
see its thinking. Written in machine lan- 
guage, you decide where to move using the 
arrow keys. $9.95 




BOSS 



by V. Hester from Soft Sector 

This utility is the perfect tool for creating and 
debugging BASIC programs. It allows single 
stepping through a BASIC program, setting up to 
five break points in the program, and tracing of 
program logic using only a small portion of the 
screen. You can also review selected variables 
during program execution and return to your 
program with the display restored. If you like, 
you can store one or more programs in high memo- 
ry for later retrieval. 

Known to work with Level 2, TRSDOS, 
NEWDOS 2.1, NEWDOS/80, and VTOS. $29.95 

THE BOOK 

ACCESSING THE TRS-80* ROM 

from Insiders Software Consultants 

For the machine language expert or beginner! 
This first of three volumes gives you access to 
over fifty arithmetic, mathematical, and data con- 
version routines in the TRS-80 ROM. Includes 
sample programs, a disassembler program, a com- 
mented listing of these ROM routines, and a memo- 
ry map of over 500 addresses. 134 pages. $14.95 

DISK*MOD 

by Roy Soltoff from Misosys 

This machine language program modifies your 
copy of the Radio Shack Editor /Assembler for use 
with your minidisk and any disk operating sys- 
tem. You can save and load both text source and 
assembled object files. Unlike the NEWDOS ver- 
sion you can read the directory and the allocation 
of granuales while in the EDTASM. You can also 
kill files. It is a complete disk modification for one 
or more drives. 

Other capabilities are also added which are not 
found on NEWDOS. The block move command re- 
locates a section of text to any other area. The 
global change command permits, for example, 
changing a label throughout the text. The pagi- 
nation feature provides hardcopy on 8 1/2 by 11 
pages on either single sheets or continous paper. 
In addition, high memory can be reserved, like in 
BASIC, for machine language routines like printer 
drivers. You can also display the amount of mem- 
ory remaining. 

The [CLEAR] key is functional, the symbol 
table is sorted alphanumerically and output 
5-across, the scroll up /down allows 15 lines on the 
screen, and the 'DEFM' assembly is improved. 
Lower case input is now permitted and you can 
branch to any address. Plus, it also corrects the 
errors in the Radio Shack tape version. 

Save your time and make full use of your disk 
system by upgrading your Editor Assembler 
today. $19.95 

DDODDDDDaDDDDDDOaaaDDDDDaaaDDDDDDDDDDODI 



TUNNEL of FAHAD 

by K. Pfeiffer from Adventure 

Patterned after the popular arcade game 

"Crash", this is an action game with sound. 

You attempt to recover the silver and 

tanner leaves while avoiding the Mummy. 

$9.95 



QUAD 



by Charles Asper from Acorn 

If you are looking for a logical and 
challenging game you should try your hand 
at QUAD. The game is like 3D tic-tac-toe 
with a time clock and four levels of play for 
one or two players. Vivid graphics and 
six-way cube rotation so you can see the 
play from any angle. 
Protected tape $14.95 
Protected disk $20.95 

CIRCLE 175 ON READER SERVICE CARD 



□ 
□ 

D 
□ 

a 
a 
D 
a 

D 
C 
D 
D 
n 
D 
C 
G 

a 
u 
□ 

G 

G 
G 
G 
D 
D 

a 

D 
D 
D 
D 
D 
D 
D 
D 
D 
D 
D 

a 
o 

D 
D 
D 

a 

D 
D 
D 

a 

D 

D 
D 

a 



f7h\ 



THE PROGRAM STORE 
4200 Wisconsin Ave 
P.O. Box 9609 Deot. 
Washington DC 20016 



NW 



R5 




VISA AND 

MASTERCARD 



V»' 



TO ORDER 

TOLL FREE 

800-424-2738 

For program information call 
(202) 337-4691 



Mail orders : Send check or 
money order for total purchase 
price, plus $1.00 for shipping 
& handling. Charge card cus- 
tomers, please include card 
number, expiration date, and 
your name as it appears on the 
card. 



Actor -Based , cont'd... 

ASK (ASK SEED (MAKE)) (START) 
This starts the first seed off which will 

start the others off later. 

ASK MOVIE (MAKE GARDEN 1000) 
The default universe sends ticks to all 

the flowers and seed involved, the things 

they had planned are run, and all display 

and turtle commands are stored in the 

movie "Garden. " 

ASK GARDEN (REMEMBER 

SPEED 10) 

ASK GARDEN (SHOW) 

These two message transmissions 
result in the movie being shown at 10 
frames per second. First, a flower appears 
and grows and then another starts to grow, 
then another and after a while the first 
flower disappears and so on. 

Section IV. Message Passing 

Message passing is the mechanism of 
communication between two actors. A 
pattern matching procedure called 
"Match" is used to decode the incoming 
message. This provides great flexibility in 
the syntax of the messages sent and 
received, and enables the use of much more 
readable commands. 

The following is a list of some of the 
messages that any instance of "Something" 
can receive: 

l.The "RECEIVE" message which 
enables an actor to increase the set of 
messages it understands. 

2. The memory messages, "RE- 
MEMBER," "WHAT," "REPLACE," 
and "FORGET" which provide a powerful 
relational memory to each actor. These are 



also used to inspect the position, heading, 
speed, size and the like of an object and to 
update those quantities. 

3. "MAKE" and "UNMAKE" mes- 
sages which create or destroy instances. 

4. Two kinds of "PRINT" messages 
which print out the script or the memory 
of an actor in a form designed to be easy to 
read. 

5. A series of structural editing 
commands for inserting, deleting, and 
replacing receivers or their parts. 

Each actor is a little 
person, who knows a few 
things, can be told to do a 
few things, and can be 
taught new tricks. 

6. "PLAN:" message for scheduling 
things to do at later times. 

7. The "TICK" message for telling an 
actor to do all that he or she should during 
the smallest quantum of time and pro- 
viding him or her with access to the names 
of other actors, enabling interactions. 

Instances of "Object" can, by passing 
the buck to "Something," receive all the 
above messages. They can also receive the 
"turtle" commands, i.e., "FORWARD," 
"BACK," "RIGHT," "LEFT," "HIDE," 
"SHOW," "PENUP," "PENDOWN," of 
which there are two varieties. One, the 
object moves gradually across the screen at 
some speed while the other the object 
disappears and appears at the new 
position. 




Section V. Ticks Plans and Movies 

Using the system, one can write 
procedures that move one object, then 
another and back again. It will not, 
however, look as if tliey are moving 
simultaneously since the interpretation 
and execution of the commands is slower 
than the maximum duration for per- 
sistence of vision of occur. A solution is to 
have a scheduler run things at the 
appropriate time, and then save away the 
display commands to be run later. These 
saved-away commands, called a "Movie,* 
can be run later with the appearance of 
parallelism. This was done in earlier 
implementations but the current one 
distributes the responsibility to each actor 
to remember what it will do later. The 
scheduler, or "Universe" as it is called, just 
sends "tick" or "increment the time" 
messages to all actors it knows about. 
Movies can be remembered or just the code 
run, depending on the message to the 
"Universe" or "Movie." 

If one wants an event to be dependent 
upon the occurrence of another event then 
the appropriate actors must check for the 
occurrence of the event when it receives a 
tick message. For example, if Lucy is told 
to scream if Snoopy comes too close then 
the "Lucy" actor must check to see where 
Snoopy is whenever she receives a tick 
message. If Lucy was told to scream if 
anybody came near, she would need to 
know the names of everybody around. 
That is why name of the current universe 
comes along with each tick message. Lucy 
can ask each actor where he or she is. 

When an actor is told to plan 
something it is always relative to that own 
actor's internal time. His or her time is 
incremented with each tick. Associated 
with each time are the things that actor 

Message passing is the 
mechanism of communi- 
cation between two 
actors, 

plans to do at that time. After the actor 
remembers the things planned it tells the 
current universe that it has things to do and 
would like to be placed on the mailing list 
for receiving tick messages. 

The universe when told to run will 
send ticks to each actor with things to do. 
When an actor has nothing to do it tells the 
universe who stops sending it ticks. When 
the universe has run the number of ticks 
asked of it or there are no more actors with 
things to do it stops. 

The screen is an actor that receives 
display messages like "Put George For- 
ward 100." When a movie is being made 
the screen can send messages asking the 
movie to remember the display messages 
the screen received. The movie can then be 
run later without sending any messages 
except those to the display. 



82 



CREATIVE COMPUTING 



DYNACOMP 



Quality software for: 

ATARI 

PET 

APPLE II Plus 



TRS-80 (Level II) 
NORTH STAR 
CP/M 8" Disk 



GAMES 



BRIDGE 2.0 



Price: $17.95 Cassette 
$21.95 Diskette 

An all-inclusive version of this most popular of card games. This program both BIDS and PLAYS 
either contract or duplicate bridge. Depending on the contract, your computer opponents will either 
play the offense OR defense. If you bid too high, the computer will double your contract! BRIDGE 2.0 
provides challenging entertainment for advanced players and is an excellent learning tool for the bridge 
novice. 

HEARTS 1.5 Price: $14.95 Cassette 

$18.95 Diskette 
An exciting and entertaining computer version of this popular card game. Hearts is a trick-oriented 
game in which the purpose is not to take any hearts or the queen of spades. Play against two computer 
opponents who are armed with hard-to-beat playing strategies. 

CRIBBAGE 2.0 (TRS-80 only) Price: $14.95 Cassette 

$18.95 Diskette 
This is a well-designed and nicely executed two-handed version of the classic card game, cribbage. It is 
an excellent program for the cribbage player in search of a worthy opponent as well as the beginner 
wishing to learn the game, in particular the scoring and jargon. The standard cribbage score board is 
continually shown at the top of the display (utilizing the TRS-80's graphics capabilities), with the cards 
starwn underneath . The computer automatically scores and also announces the points using the tradi- 
tional phrases. 

CHESS MASTER (North Star and TRS-80 only) Price: $19.95 Cassette 

$23.95 Diskette 

This complete and very powerful program provides five levels of play. It includes castling, en passant 
captures and the promotion of pawns. Additionally, the board may be preset before the start of play, 
permitting the examination of "book" plays. To maximize execution speed, the program is written in 
assembly language (by SOFTWARE SPECIALISTS of California). Full graphics are employed in the 
TRS-80 version, and two widths of alphanumeric display are provided to accommodate North Star 
users. 

STARTREK 3.2 Price: $ 9.95 Cassette 

$13.95 Diskette 

This is the classic Startrek simulation, but with several new features. For example, the Klingons now 
shoot at the Enterprise without warning while also attacking star bases in other quadrants. The 
Klingons also attack with both light and heavy cruisers and move when shot at ! The situation is hectic 
when the Enterprise is besieged by three heavy cruisers and a starbase S.O.S. is received! The Klingons 
get even! 

SPACE TILT (Apple only) Price: $10.95 Cassette 

$14.95 Diskette 

Use the game paddles to tilt the plane of the TV screen to "roll" a ball into a hole in the screen. Sound 
simple? Not when the hole gets smaller and smaller! A built-in timer allows you to measure your skill 
against others in this habit-forming action game. 

GAMES PACK I and GAMES PACK II Price: $ 9.95 each, Cassette 

$13.95 each, Diskette 
GAMES PACK I contains BLACKJACK. LUNAR LANDER. CRAPS, HORSERACE, SWITCH 
and more. GAMES PACK II includes CRAZY EIGHTS, JOTTO, ACEY-DUCEY, LIFE, WUMPUS 

and others. 

Why pay S5.95 or more per program when you can buy a DYNACOMP collection for just $9.95? 



STATISTICS and ENGINEERING 



DATA SMOOTHER Price: $14.95 Cassette 

$18.95 Diskette 

This special data smoothing program may be used to rapidly derive useful information from noisy 
business and engineering data which are equally spaced. The software features choice in degree and 
range of Tit, as well as smoothed first and second derivative calculation. Also included is automatic 
plotting of the input data and smoothed results. 

FOURIER ANALYZER Price: $14.95 Cassette 

$18.95 Diskette 

Use this program to examine the frequency spectra of limited duration signals. The program features 
automatic scaling and plotting of the input data and results. Practical applications include the analysis 
of complicated patterns in such fields as electronics, communications and business. 

TFA (Transfer Function Analyzer) Price: $19.95 Cassette 

$23.95 Diskette 
This is a special software package which may be used to evaluate the transfer functions of systems such 
as hi-fi amplifiers and filters by examining their response to pulsed inputs. TFA is a major modification 
of FOURIER ANALYZER and contains an engineering-oriented decible versus log-frequency plot as 
well as data editing features. Whereas FOURIER ANALYZER is designed for educational and scien- 
tific use, TFA is an engineering tool. 

FOURIER ANALYZER and TFA may be purchased together for a combined price of $29.95 
(Cassettes) and $37.95 (Diskettes). 

REGRESSION I Price: $19.95 Cassette 

$23.95 Diskette 

REGRESSION 1 is a unique and exceptionally versatile one-dimensional least squares "polynomial" 
curve fitting program. Features include very high accuracy; an automatic degree determination option; 
an extensive internal library of fitting functions; data editing; automatic data and curve plotting; a 
statistical analysis (e.g., standard deviation, correlation coefficient, etc.) and much more. In addition, 
new fits may be tried without reentering the data. REGRESSION I is certainly the cornerstone program 
in any data analysis software library. 



CIRCLE 136 ON READER SERVICE CARD 



Availability 

DYNACOMP software is supplied with complete documentation containing clear explanations and 
examples. All programs will run within 16K program memory space (ATARI requires 24K). Except where 
noted, programs are available on ATARI, PET. TRS-80 (Level II) and Apple (Applesoft) cassette and 
diskette as well as North Star single density (double density compatible) diskette. Additionally, most pro- 
grams can be obtained on standard 8" CP/M floppy disks for systems running under MBASIC. 



BUSINESS and UTILITIES 

MAIL LIST II (North Star only) Price: $21.95 

This many-featured program now includes full alphabetic and zip code sorting as well as file merging. 
Entries can be retrieved by user -defined code, client name or Zip Code. The printout format allows the 
use of standard size address labels. Each diskette can store more than 1 100 entries (single density; over 
2200 with double density systems)! 

TEXT EDITOR I (Letter Writer) Price: $14.95 Cassette 

$18.95 Diskette 

An easy to use, line-oriented text editor which provides variable line widths and simple paragraph in- 
dexing. This text editor is ideally suited for composing letters and is quite capable of handling much 
larger jobs. 

FINDIT (North Star only) Price: $19.95 

This is a three-in-one program which maintains information accessible by keywords of three types: Per- 
sonal (e.g., last name). Commercial (eg: plumbers) and Reference (eg: magazine articles, record 
albums, etc). In addition to keyword searches, there are birthday, anniversary and appointment sear- 
ches for the personal records and appointment searches for the commercial records. Reference records 
are accessed by a single keyword or by cross-referencing two or three keywords. 

DFILE (North Star only) Price: $19.95 

This handy program allows North Star users to maintain a specialized data base of all files and pro- 
grams in the stack of disks which invariably accumulates. DFILE is easy to set up and use. It will 
organize your disks to provide efficient locating of the desired file or program. 

COMPARE (North Star only) Price: $12.95 

COMPARE is a single disk utility software package which compares two BASIC programs and 
displays the file sizes of the programs in bytes, the lengths in terms of the number of statement lines, 
and the line numbers at which various listed differences occur. COMPARE permits the user to examine 
versions of his software to verify which are the more current, and to clearly identify the changes made 
during development. 

COMPRESS (North Star only) price: $12.95 

COMPRESS is a single-disk utility program which removes all unnecessary spaces and (optionally) 
REMark statements from North Star BASIC programs. The source file is processed one line at a time, 
thus permitting very large programs to be compressed using only a small amount of computer memory. 
File compressions of 20-50* are commonly achieved. 

GRAFIX (TRS-80 only) Price: $12.95 Cassette 

$16.95 Diskette 

This unique program allows you to easily create graphics directly from the keyboard. You "draw" 
your figure using the program's extensive cursor controls. Once the figure is made, it is automatically 
appended to your BASIC program as a string variable. Draw a "happy face", call it HI and then print 
it from your program using PRINT HS! This is a very easy way to create and save graphics. 

TIDY (TRS-80 only) Price: $10.95 Cassette 

$14.95 Diskette 

TIDY is an assembly language program which allows you to renumber the lines in your BASIC pro- 
grams. TIDY also removes unnecessary spaces and REMark statements. The result is a compacted 
BASIC program which uses much less memory space and executes significantly faster. Once loaded, 
TIDY remains in memory; you may load any number of BASIC programs without having to reload 
TIDY! 



SIMULATIONS and EDUCATION 

BLACK HOLE (Apple only) price: $14.95 Cassette 

$1S.95 Diskette 

This is an exciting graphical simulation of the problems involved in closely observing a black hole with 
a space probe. The object is to enter and maintain, for a prescribed time, an orbit close to a small black 
hole. This is to be achieved without coming so near the anomaly that the tidal stress destroys the probe. 
Control of the craft is realistically simulated using side jets for rotation and main thrusters for accelera- 
tion. This program employs Hi-Res graphics and is educational as well as challenging. 

V ALDEZ Price: $14.95 Cassette 

$18.95 Diskette 

A simulation of supertanker navigation in the Prince William Sound and Valdez Narrows. The pro- 
gram uses an extensive 2S6X256 element radar map and employs physical models of ship response and 
tidal patterns. Chart your own course through ship and iceberg traffic. Any standard terminal may be 
used for display. 

FLIGHT SIMULATOR Price: $17.95 Cassette 

$21.95 Diskette 

A realistic and extensive mathematical simulation of take-off, flight and landing. The program utilizes 
aerodynamic equations and the characteristics of a real airfoil. You can practice instrument approaches 
and navigation using radials and compass headings. The more advanced flyer can also perform loops, 
half-rolls and similar acrobatic maneuvers. 

TEACHER'S PET: I Price: $ 9.95 Cassette 

$13.95 Diskette 

This is the first of DYNACOMP's educational packages. Primarily intended for preschool to grade 3. 
TEACHER'S PET provides the young student with counting practice, letter-word recognition and 
three levels of math skill exercises. 



Ordering Information 

All orders arc processed and shipped postpaid within 48 hours. Please enclose payment with order along 
with computer information. If paying by VISA or Master Card, include all numbers on card. For orders 
outside North America add 10% for shipping and handling. 

Add $3.00 for 8" floppy disk (soft sectored, CP/M, Microsoft BASIC) 
Deduct 10% when ordering 3 or more programs. 

Ask for DYNACOMP programs at your local software dealer. Write for detailed descriptions of these and 
other programs from DYNACOMP. 

DYNACOMP, Inc. 

6 Rippingale Road 

Dept. C 

Pittsford, New York 14534 

(716) 586-7579 

New York State residents please add 7% NYS sales tax. 




VISA 



master charge 



R 



Actor -Based , cont'd . . . 

Section VI. 

How Does One Talk About This? 

In teaching children to use the 
animation system one should have a 
consistent vocabulary and set of concepts. 
Are the words "Something," "Universe," 
and "Object" reasonable names for these 
general entities? I think not, but haven't 
thought up better ones. How should one 
talk about the difference between 
"Square," the general square, and any 
instantiation of squares? Will there often 
be a confusion between the actor 
"George," his "script," and his image on 
the screen? Identity becomes very strange 
to talk about, since anything about an 
actor can be changed; what it looks like, 
how it acts, even what it is a kind of. 
(Though this programming style may be 
discouraged to avoid this confusion.) Only 
its name is permanent. 

Explaining the ticks, plans and 
universes might bring up problems. How 
should one talk about, or think about, 
many separate processes going on in 
parallel? I don't really know. 

This system lends itself very well to the 
"little man" vocabulary. Each actor is a 
little person, who knows a few things, can 
be told to do a few things, and can be 
taught new tricks. This little person 
receives messages and sends them to 
others. This view of programming lends 
itself very well to avariation of playing 
"turtle." The children can play games 
where they are actors and pass the 
messages around. This link between reality 
and this programming style I hope will 
make the system seem more intuitive and 
natural. 

Section VII. Efficiency Issues 

One may worry that such a system will 
run too slowly to be useful for working 
with children or for building an intelligent 
system on top of it. The message passing 
and matching involved are much slower 
than more traditional mechanisms. The 
basic use of hierarchies is slow, since each 
actor seldom can respond directly to a 
message but needs to pass it on to the class 
which it is a member. 

The answer to this objection is 
standard. One should let a compiler worry 
about such efficiencies. I have imple- 
mented a few macros that when possible 
replace actor transmissions with the code 
that they would invoke. I also plan to 
"compile" patterns in the receivers to run 
faster. The price for some of these hacks is 
less flexibility. If the transmission "ASK 
FRED (APPEAR FORWARD 100)" is 
replaced by the action part of the receiver 
in "Object" with "Fred" and the amount 
instantiated properly. However, telling 
Fred's immediate superior a new way to 
handle "forward" messages will not affect 
his behavior if he is "compiled." 



There are other efficiency hacks that 
may be worthwhile, for example, in the 
memory system for the actors. I plan, 
however, to follow the principle that the 
code should be written clearly and simply 
and that efficiency hacks should be below 
the surface and transparent to the user. 

Section VIII. 

Extensions and Improvements Planned 

One useful extension would be the 
addition of primitives for joining and 
breaking apart "Object" actors. For 
example, one may want to join a triangle 
actor and a square actor to make a house 
actor. Or one may want to have a face 
accept messages as well as any of its parts. 
A person may get into a car, so that 
temporarily any movement of the car 
should also change the state of the person. 
Some progress has been made here, so that 
simple composite objects can be defined 
but more needs to be done. 

The scheduling and interaction of 
events is very important and needs to be 
extended. Events should be able to be 
scheduled relative to other events or 

This view of program- 
ming as collections of 
actors, or a community of 
"little people," that send 
and receive messages 
from each other is very 
powerful. 

internal clocks. "Object" should be able to 
accept messages to handle simple inter- 
actions. For example, one should be able 
to tell an "Object" to go forward until it 
runs into another "Object." 

Another improvement being con- 
sidered is the ability to handle partial 
messages. For example, if an object 
receives a forward message without a 
number as the second word, then instead of 
the present response of printing out an 
error message, it should prompt the user 
with a question like, "How much should 
Fred go forward?" 

Taking this idea one step further I 
plan to have a "help" button that can be 
pushed at any time. If one has typed only 
part of a message and then the help button, 
then the actor may be able to finish part or 
all of the message for the user. This feature 
will hopefully alleviate many of the 
problems of typing long names and 
messages that make the code more 
readable. 

It should be clear by now that this 
system is far from complete and I welcome 
any suggestions or criticism. 

I would suggest that anyone wishing 
more information look into Director 
Guide, M.I.T. A I Memo #482 B, December 
1979. □ 



Bibliography 

1) Adler, M., "Understanding Peanuts Cartoons", 
Progress in Perception. Department of Artificial 
Intelligence Research Report No. 13, University of 
Edinburgh, December 1975. 

2) Baecker, R., "Interactive Computer-Mediated 
Animation", MIT EE Ph.D. Thesis 1969 MAC- 
TR-61. 

3) Goldberg, A., "Smalltalk and Kids Commen- 
taries", Learning Research Group, Xerox Palo 
Alto Research Center, 1974 Draft. 

4) Goldstein, I. P., Vnderstanding Simple Picture 
Programs. MIT AI Laboratory AI-TR-294, 
September 1974. 

5) Goldstein, L, Leiberman, H., Bochner, H.. Miller, 
M., "LLOGO: An Implementation of LOGO in 
LISP", MIT-AI Memo 307, March 4, 1975. 

6) Goldstein, L, Papert. S., "Al, Language and the 
Study of Knowledge", MIT-AI Memo 337, 1976. 

7) Hewitt, C., Smith. B., "Towards a Programming 
Apprentice", IEEE Transactions on Software 
Engineering SE-I, March 1975. 

8) Kahn, K., "Three Interactions Between AI and 
Education", Machine Representations Of knowl- 
edge, ed. Elcock, E., Michie, D., D. Reidel 
Publishing Company, Dordrecht, Holland, in 
press. 

9) Minsky, M., "A Framework for Representing 
Knowledge", The Psychology of COmputer Vision, 
ed. Winston, P., McGraw-Hill Book Company, 
New York, 1975. 

10) Papert, S., "Teaching Children Thinking", MIT- 
AI Memo 247, October 1971. 

11) Papert, S., "Teaching Children To Be Mathe- 
maticians vs. Teaching About Mathematics", 
MIT-AI Memo 249. 

12) Parke, F.I., "Computer Generated Animation of 
Faces", Univ. of Utah Report CSc-72-120, June 
1972. 

13) Schank, R., Conceptual Information Processing, 
North Holland Publishing Company, 1975. 

14) Schulz, C, "All This and Snoopy, Too", Fawcett 
Crest Publications, Inc., Greenwich, Conn. 1962. 

15) Schulz, C, Peanuts Jubilee — My Life and Art 
with Charlie Brown and Others, Holt, Rinehart 
and Winston, New York, 1975. 

16) Simmons, R., "The Clowns Microworld", 
Theoretical Issues in Natural Language Proces- 
sing, ed. Schank. R. and Nws\vWfc"CK\, ft., June, 
1975. 

17) Smith, B. and Hewitt, C, "A Plasma Primer", 
MIT-AI Working Paper 92, October, 1975. 

18) Sutherland, I., "Sketchpad: A Man-Machine 
Graphical Communication System", MIT Lincoln 
TabTR-296, 1963. 




84 



CREATIVE COMPUTING 



BASIC Compiler, with trs-8o basic 

Compiler, your Level II BASIC programs will run at 
record speeds! Compiled programs execute an 
average of 3-10 times faster than programs run 
under Level II. Make extensive use of integer 
operations, and get speeds 20-30 times faster 
than the interpreter. 

Best of all, BASIC Compiler does it with BASIC, 
the language you already know. By compiling 
the same source code that your current BASIC 
interprets, BASIC Compiler adds speed with a 
minimum of effort. 

And you get more BASIC features to program 
with, since features of Microsoft's Version 5.0 
BASIC Interpreter are included in the package. 
Features like the WHILE . . WEND statement, long 
variable names, variable length records, and the 
CALL statement make programming easier. An 
exclusive BASIC Compiler feature lets you call 
FORTRAN and machine language subroutines 
much more easily than in Level II. 

Simply type in and debug your program as 
usual, using the BASIC interpreter. Then enter a 
command line telling the computer what to 
compile and what options to use. 

Voila! Highly optimized, Z-80 machine code 
that your computer executes in a flash! Run it now 
or save it for later. Your compiled program can be 
saved on cttsk tor direct execution every time. 

Want to market your programs? Compiled ver- 
sions are ideal for distribution* You distribute only 
the object code, not the source, so your genius 
stays fully protected. 

BASIC Compiler runs on your 
TRS-80 Model I with 48K and disk 
drive. The package includes 
BASIC Compiler, linking loader 
and BASIC library with complete 
documentation. $195.00. 



MORE 

FROM 

MICROSOFT 



'Microsoft royalty information for 
the sale ot programs compiled 
with BASIC Compiler is available 
from Microsoft. 



1111 III III II 1 1 




muMATH Symbolic Math System 

expands your TRS-80 beyond the limits of numeri- 
cal evaluation to a much higher level of math 
sophistication. 

Symbolic mathematics is muMATH's power. For 
the first time, algebra, trigonometry, calculus, 
integration, differentiation and more can be per- 
formed on a system smaller than an IBM 370. And 
in a fraction of the time you could do them 
manually 

Yet for all its power, muMATH is simple to use. 

To perform a differentiation you could enter: 
?DIF(A # XT 3 + SIN(XT 2),X); 

In almost no time, the computer would reply 
with: @2*X # COS(XT 2) + 3 # A # X t 2. 

Or to add fractions: ?1/3 + 5/6 + 2/5 + 3/7; 

The instantaneous answer: 419/210. 

Or to perform a more difficult trigonometric 
expansion you enter: SIN(2 # Y] # (4 # COS(X)T3-COS 

(3 # X) + SIN (Yr(COS(X+Y+#PI) ~ COS(X-Y)); 

Just a few seconds later, the computer replies: 
@4 # SIN(Y] # COS(X) # COS(Y). 

muMATH has virtually infinite precision with full 
accuracy up to 611 digits. 

If you use math, you'll find countless ways to save 
time and effort with muMATH. It's a professional 
tool for engineers and scientists. A learning tool 
for students at any level from algebra to calculus. 
And if you want to expand your capabilities 
even beyond the standard muMATH, the option is 
open. muSIMP, the programming language in 
which muMATH is written, is included in the muMATH 

package. A superset of the lan- 
guage LISP, muSIMP is designed 
especially for interactive symbolic 
mathematics and other artificial 
intelligence applications. 

muMATH and muSIMP were 

written by The Soft Warehouse, 

Honolulu, Hawaii. Pnced at $74.95, 

the package includes muMATH, 

muSIMP and a complete manual. 

It requires a Model I TRS-80 with 

32K and single disk. muMATH 

for the Apple II Computer will 

be available later this year. 



I 



I 




You can buy muMATH and BASIC Compiler at computer stores across the country that carry Microsoft 
products. If your local store doesn't have them, call us. 206-454-1315. Or write Microsoft Consumer 
Products, 400 108th Avenue N.E., Suite 200 Bellevue, WA 98004. 



/HKTfipSOfT 

V CONSUMER^ PRODUCTS F 



CIRCLE 168 ON READER SERVICE CARD 



3. Orderly Debugging 
(from La Vie des Animaux) 




Same Screen , cont'd. . . 

This has an important bearing on the 
problem of conceptual clarity — especially 
clarity in multi-process simulations. Multi- 
process systems are of increasing interest 
to computerists, for they are closer in spirit 
to the complex environments which we 
encounter in real life, and very different 
from the simple checkbook programs or 
Adventure games. So, in a Space War I 
have independent ships, missiles, heavenly 
bodies — each affects the others, all must 
be processed every time step. This is where 
Smalltalk (and other actor-based lan- 
guages) make implementation so straight- 
forward. The language itself contains 
constructs for multiple processes and, 
most importantly, communication struc- 
tures between them. It is substantially 
easier in a language with multi-process 
programming facilities already built for it. 
Concepts like Class bootstrap the program- 
mer into the bliss of specifying behaviors 
directly and without repetition. (In Basic, 
arrays of objects would be required, with 
explicit code to scan the arrays, pass 
parameters, test for conflict; all processing 
having to be under the programmer's 
elaborate and cumbersome control.) Actor 
languages also allow you to program faster 
and help you find those structures which 
preserve, and are sympathetic to, your own 
personal approach. 



I came upon Smalltalk several years 
ago and was struck by the intelligence of its 
general philosophy — with one significant 
reservation. If one is interested in multi- 
object simulations for graphical display (a 
premise of Smalltalk's originators), then 
why am I forced to continue specifying my 
instructions in a linear, character-by- 
character, typed language? 

Moreover, I want to make pictures 
with the computer, so why couldn't a 
system be made where the programs 
themselves were pictures (or at least two- 
dimensional things)? Might we not blur the 
distinction between programming and 
animating? 

I was fortunate to be at a research 
laboratory at MIT which had both the 
facilities and the expertise to explore this 
idea. The result of this collaboration was a 
system called EOM, whose name has lost 
its historical meaning. (Originally sug- 
gested by McCullough's "Embodiments of 
Mind"; see bibliography, — Ed.) EOM 
was essentially an actor language, but one 
in which interconnection of actors by 
messages was visually configurable. Our 
implementation used a lightpen on a vector 
display with menus for programming and 
scripting animations. 

The fundamental idea of EOM was 
that all programs are two-dimensional 
scripts, whose graphical nodes themselves 
stood for executable programs. Two 
aspects were both controlled from the 



screen: the data paths of the program and 
the graphics of the intended animation. 

Our script convention of data flow is 
that lines drawn into the top of nodes are 
inputs, and lines from the bottom are 
outputs. Such links are the paths of data 
flow. 

First let's look at a straight program 
example: 




Figure 1. 

The script in Figure 1 simply moves a 
point diagonally across the frame. The 
node time outputs a value — an ascending 
integer — as a function of absolute time in 
the sequence. (This value is essentially a 
frame number.) This value takes a split 
path to both the x and y input of point it. 
The object point it now sends two values 
(in this case, its inputs) to screen, an actor 
which displays it. 

The real advantages for graphics are 
to come when we add in picture elements. 
Consider the following script. 




Figure 2. 

This program will produce a box 
sailing across the frame. The outputs of 
box are essentially its shape and position, 
which change. These variables are re- 
peatedly sent to sky. The position of the 
word "sky" indicates the highest point the 
box is to reach. 

The box here is like a subroutine, 
which might be defined like this: 




here 



group 



I 



output 



output 



Figure 3. 



86 



CREATIVE COMPUTING 



Exciting, entertaining software for the Apple II and Apple II Plus* 



'. 1 




If you liked "Invaders", you'll love ASTEROIDS IN SPACE by Bruce Wallace. Your space ship is traveling in the middle of a shower of asteroids. Blast the asteroids 
with lasers, but beware — big asteroids fragment into small asteroids! The Apple game paddles allow you to rotate your space ship, fire its laser gun, and give it 
thrust to propel it through endless space. From time to time you will encounter an alien space ship whose mission is to destroy you, so you'd better destroy it first! 
High resolution graphics and sound effects add to the arcade-like excitement that this program generates. Runs on any Apple II with at least 32K and one 
disk drive. 0" diskette - $19.95 




FRACAS™ by Stuart Smith. A fantastic adventure game like no other 
— up to eight players can participate in FRACAS at the same time. 
Journey in the land of FAROPH, searching for hidden treasure while 
warding off all sorts of unfriendly and dangerous creatures like the 
Ten Foot Spider and the Headless Horseman. You and your friends 
can compete with each other or you can join forces and gang up on 
the monsters. Your location is presented graphically and sound 
effects enliven the battles. Save your adventure on diskette or 
cassette and continue it at some other time. Requires at least 32K 
of RAM. Cassette: $19.95 Diskette: $24.95 



BATTLESHIP COMMANDER™ by Erik Kilk and Matthew Jew. A game 
of strategy. You and the computer each start out by positioning five 
ships of different sizes on a ten by ten grid. Then the shooting starts. 
Place your volleys skillfully — a combination of logic and luck are 
required to beat the computer. Cartoons show the ships sinking and 
announce the winner. Sound effects and flashing lights also add to 
the enjoyment of the game. Requires at least 32K of RAM. 
Cassette: $14.95 Diskette: $19.95 





P"^^^^ 


1 




9" 


i± •' " ■ 


i ONPUTI V 

V 1 lit. 1 H I HI, 

Mil 


r. 
'. c O'AIM III 

1 HI 1 
miii | [ Y TIltBI 


..iHK.1 i i MMMI x - i ' 

t ..1 11 t Hit- 1 1 * 

i kin II. 


^■fl'iM.rtirn; 


■ 






FASTGAMMON™ by Bob Christiansen. 
Sound, hi res color, and cartoons have 
helped maked this the most popular 
backgammon-playing game for the 
Apple II. But don't let these entertaining 
features fool you — FASTGAMMON 
plays serious backgammon. Requires at 
least 24K of RAM. 
Cassette: $19.95 Diskette: $24.95 




*"Apole II" and "Apple II Plus" are 
trademarks of Apple Computer. Inc 



QUTiLrry software 

6660 Reseda Blvd., Suite 105, Reseda, CA 91335 

WHERE TO GET IT: Call us at (213) 344-6599 for the name of the Quality Software dealer nearest you. If necessary, you 
may order directly from us. MasterCharge and Visa cardholders may place orders by telephone and we will deduct $1 
from orders over $19 to compensate for phone charges. Or mail your order to the address above. California residents add 
6% sales tax. SHIPPING CHARGES: Within North America orders must include $ 1 .50 for first class shipping and handling. 
Outside North America the charge for airmail shipping and handling is $5.00 — payable in U.S. currency. 



CIRCLE 231 ON READER SERVICE CARD 



NOVEMBER 1980 



87 



input 




person 



THE COMPLEAT FLYING BOX. 

We first see a box resting on a cliff; then it falls off into 
the sky. 



Figure 4. 



Same Screen, cont'd... 

The ( ) nodes indicate positions on the 
screen; their output is therefore their 
positions x,y. Thus to change the shape of 
the box, you may grab any of the ( ) nodes 
by lightpen and move where you like, 
defining the new shape. 

The group node assembles the posi- 
tions and outputs them from the sub- 
routine. (The five connections to group 
complete the closed figure of four points 
and four lines.) 

The here node happens to output a 
position also: in this case, the x,y position 
of the node box in Figure 2. This is passed 
as output out of the box subroutine, and 
linked to the input of sky (in Figure 3) 
which uses it to fix the initial position of 
the box which appears in the animated 
sequence. 

Thus moving the position of the box 
node at the top level changes the initial 
position of the box in the animation — a 
simple change which does not require the 
usual calibrating and measuring: "The box 
is too far to the left by 10%, thex,yareOto 
512 so we must add 50 units to the x 
position which is currently 120 so the new 
position is 170, type that in ... " None of 
that nonsense — just grab the box and 
move it to its new position. I cannot 
imagine anything simpler. 

The position of sky in the upper level 



time 



source 




source 



switch 



sink 



SWITCHING OR "START" FUNCTION. 

The time is compared with a number; when they match, 

the switch goes from the first source to the second. 



color 



club 3 



color 



club 3 



"JUGGLE" ANIMATION ROUTINE. 

Hands remain in place; clubs jump between them. 



screen 



Figure 5. 



This "person" takes all its inputs and 
displays them on the screen: I see this as 
answering the question of whether a tree 
falling in the forest makes a sound even if 
nobody is there to hear it. 

The system was found by users to be 
most pleasing to interact with, and was 
extremely helpful in animation produc- 
tion. (We managed to film sequences for 
the science series NOVA, under the usual 
absurd production schedules, for which 
the system was superb.) 

As an environment for education, 
EOM has the advantage that a student can 
perform many simulation experiments, 
knowing nothing about Cartesian coor- 
dinates or programming. Given a set of 
simulation models, all possible degrees of 
freedom can be expressed graphically as 
described above, making interaction 
simple. For the knowledgeable student, the 
models themselves can be manipulated, 
building on the uniform and extensible 
environment. 

Alas, after many months of glory the 
system died when the hardware configura- 
tion was dismantled for newer research, 
and all that we learned must await another 
propitious time for further development. 
Its spirit is carried forward by many, and 



source 



number 



number 




sink 



ABSOLUTE-VALUE ROUTINE. 
Gives the absolute value of a number. 

color 



club 3 



number 



hand 



variable 



hand 




group 



group 



variable 



\ 



variable 



is also significant, since it is programmed 
to determine the precise trajectory of the 
box. The person node is simply a 
metaphor, for it is defined thus: 



Henry Lieberman at the MIT Artificial 
Intelligence Laboratory has extended the 
concept substantially with his Tinker 
system. □ 



88 



CREATIVE COMPUTING 



NEW! TPM* for TRS-80 Model II 
NEW! System/6 Package 

Computer Design Labs 



Z80 Disk software 



We have acquired the rights to ail TDL software (& hardware). TDL software has long had the reputation of being the best in the 
industry. Computer Design Labs will continue to maintain, evolve and add to this superior line of quality software. 

— Carl Gal left i and Roger Amidon, owners. 

Software with Manual/Manual Alone 

SYSTEM/6 
TPM with utilities, Basic I interpreter, Basic E compiler, 
Macro I assembler, Debupl<iJ»ger, and ZEDIT text 

editor. idfc. ** 

Above purchased aBpMWry costs $339.75 

being a nightmare to debug. Well, not with proper tools Special introductory offer Only $1 79.75 with coupon!! 

like Debug I. With Debug I you can easily follow the flow 

of any Z80 or 8080 program. Trace the program one 

step at a time or 1 steps or whatever you like. At each 

step you will be able to see the instruction executed and 

what it did. If desired, modifications can then be made 

before continuing. If s all under your control. You can 



All of th« software b«low is available on any of th* DEBUO I 

following madia for operation with a ZOO CPU using Many programmers give up on writing in assembly 
the CP/M* or similar type disk operating system language even though they know their programs would 
(such as our own TPM*). be faster and more powerful. To them assembly language 

seems difficult to understand and follow, as well as 
for TRS-80- CP/M (Model I or II) 

for 8" CP/M (soft sectored single density) 
for 5V." CP/M (soft sectored single density) 
for 5V." North Star CP/M (single density) 
for 5V." North Star CP/M (double density) 

BASIC I 



A powerful and fast Z80 Basic interpreter with EDIT, even skip displaying a subroutine call and up to seven 



breakpoints can be set during execution. Use of Debug I 
can payfor itself many times over by saving you valuable 
debugging time. $79.95/$20. 



RENUMBER, TRACE. PRINT USING, assembly fcnguage 
subroutine CALL, LOADGO for , j£'»i»l n jF» COPY to 
move text, EXCHANGE, KILL, LINE INPUT, error inter- 
cept, sequential file handling in both ASCII and binary 
formats, and. much, much more. It runs in a little over 12 
K. An excellent choice for games since the precision 
wai limited to 7 digits in order to make it one of the 
fastest around. $49.95/$15. 

BASIC II m * tkY* 
Basic I but with 1 2 digit ptaciSiitfl t© rn*K» fee power 
available to the business world with only a slight sacrifice 
in speed. Still runs faster than most other Basics (even 
those with much less precision). $99.95/$15. 




BUSINESS BASIC 

The most powerful Basic for business applications. It 
adds to Basic II with random or sequential disk fNee in 
either fixed or variable record lengths, simultaneous 
access to multiple disk files, PRIVACY command to 
prohibit user access to source code, global editing, 
added math functions, and disk file maintenance capa- 
bility without leaving Basic (list, rename, or delete). 
$179.95/$25. 

ZEDIT 

A character oriented text editor with 26 commands 
and "macro" capability for stringing multiple commands 
together. Included are a complete array of character 
move, add, delete, and display function. $49,957$ 15. 

ZTEL 

Z80 Text Editing Language - Not just a text editor. 
Actually a language which allows you to edit text and 
also write, save, and recall programs which manipulate 
text. Commands include conditional branching, subrou- 
tine calls, iteration, block move, expression evaluation, 
and much more. Contains 36 value registers and 1 text 
registers Be creative.' Manipulate text with commands 
you write using Ztel. $79.95/$25. 

TOP 

A Z80 Text Output Processor which will do text 
formatting for manuals, documents, and other word 
processing jobs. Works with any text editor. Does 
justification, page numbering and headings, spacing, 
centering, and much more! $79.95/$25. 

MACRO I 

A macro assembler which will generate relocateable 
or absolute code for the 8080 or Z80 using standard 
Intel mnemonics plus TDL/Z80 extensions. Functions 
include 14 conditionals, 16 listing controls, 54 pseudo- 
ops, 1 1 arithmetic/logical operations, local and global 
symbols, chaining files, linking capability with optional 
linker, and recursive/reiterative macros This assembler 
is so powerful you'll think it is doing all the work for you. It 
actually makes assembly language programming much 
less of an effort and more creative. $79.95/520. 

MACRO II 

Expands upon Macro l's linking capability (which is 
useful but somewhat limited) thereby being able to take 
full advantage of the optional Linker. Also a time and 
date function has been added and the listing capability 
improved. $99.95/$25. 

LINKER 

How many times have you written the same subroutine 
in each new program? Top notch professional pro- 
grammers compile a library of these subroutines and 
use a Linker to tie them together at assembly time. 
Development time is thus drastically reduced and 
becomes comparable to writing in a high level language 
but with all the speed of assembly language. So, get the 
new CDL Linker and start writing programs in a fraction 
of the time it took before. Linker is compatible with 
Macro I & II as well as TDL/Xi tan assemblers version 2.0 
or later. $79.95/$20. 



II 

This is an expanded debugger which has all of the 
features of Debug I plus many more. You can "trap" (i.e. 
trace a program until a set of register, flag, and/or 
memory conditions occur). Also, instructions may be 
entered and executed immediately. This makes it easy 
to learn new instructions by examining registers/memory 
before and after. And a RADIX function allows changing 
between ASCII, binary, decimal, hex, octal, signed 
decimal, or split octal. All these features and more add 
up to give you a very powerful development tool. Both 
Debug I and II must run on a Z80 but will debug both Z80 
and 8080 code. $99.95/$20. 

ZAPPLE 

A Z80 executive and debug monitor. Capable of 
search, ASCII put and display, read and write to I/O 
ports, hex math, breakpoint, execute, move, fill, display, 
read and write in Intel or binary format tape, and more! 
on disk 

APPLE 

8080 version of Zapple 







>f*S>"^ '^ 



*&&&* 







NEW! TPM no 
III 



TPM* 



rTRS-80 Model 





A NEW Z80 disk operation system! This is not CP/M 4 . 
If s better! You can still run any program which runs with 
CP/M* but unlike CP/M* this operating system was 
written specifically for the Z80* and takesfull advantage 
of its extra powerful instruction set. In other wprds its 
not warmed over 8080 code! Available for TRS-80* 
(Model I or II). Tarbell, Xitan DDDC, SD Sales "VERSA- 
FLOPPY", North Star (SD&DD), and Digital (Micro) 
Systems $79.95/$25. 



ORDERING INFORMATION 

Visa, Master Charge and C.O.D. O.K. To order call or 
write with the following information. 

1 . Name of Product (e.g. Macro I) 

2. Media (e.g. 8" CP/M) •■■■ a 

3. Price and method of payment (e.g. C.O.D.) include 
credit card info, if applicable. 

4. Name. Address and Phone number. 

5. For TPM orders only: Indicate if for TRS 80, Tarbell, 
Xitan DDDC. SD Sales (5 V.." or 8")- ICOM (5W or 
8"), North Star (single or double density) or Digital 
(Micro) Systems. 

6. N.J. residents add 5% sales tax. 



Manual cost applicable against price of subsequent 
software purchase in any item except for the Osborne 
software. 



For information and tech queries call 



SYSTEM MONITOR BOARD (SMBII) 

A complete I/O board for S- 100 systems 2 serial ports. 
2 parallel ports, 1 200/2400 baud cassette tape inter- 
face, sockets for 2K of RAM, 3-2708/271 6 EPROM's or 
ROM. jump on reset circuitry. Bare board $49.95/$20. 609"599"2 1 46 

ROM FOR SMB II 

2KX8 masked ROM of Zapple monitor. Includes source 
listing $34.95/$1 5. 



PAYROLL (source code only) 

The Osborne package. Requires C Basic 2. 
5" disks $124.95 (manual not included) 
8" disks $ 99.95 (manual not included) 
Manual $20.00 

ACCOUNTS PAYABLE/RECEIVABLE 

(source code only) 

By Osborne, Requires C Basic 2 
5" disks $1 24.95 (manual not included) 
8" $99.95 (manual not included) 
Manual $20.00 

GENERAL LEDGER (source code only) 

By Osborne. Requires C Basic 2 
5" disks $99.95 (manual not included) 
8" disks $99.95 (manual not included) 
Manual $20.00 

C BASIC 2 

Required for Osborne software. $99.95/$20. 



For phono orders ONLY call toll free 

1-800-327-9191 
Ext. 676 

(bxcept Florida) 

OEMS 

Many CDL products are available for licensing to 
OEMs. Write to Carl Galletti with your requirements. 

* Z80 is a trademark of Zilog 

* TRS-80 is a trademark for Radio Shack 

* TPM is a trademark of Computer Design Labs. It is not 
CP/M* 

* CP/M is a trademark of Digital Research 

Prices and specifications subject to change without 
notice. 

DEALER INQUIRIES INVITED. 




COMPUTER 

DESIGN 

LABS 



342 Columbus Avenue 
Trenton, N.J. 08629 



CIRCLE 127 ON READER SERVICE CARD 



NOVEMBER 1960 



89 



What-Or Who-ls, contU.. 




4. Programmer 'Fish-in-Sea 
(In Interactive Environment) 

Message Passing 
(from La Caricature) 



LISP 

The language Lisp was originally 
designed by John McCarthy for use with 
certain classes of mathematical problems 
(recursive functions). It was discovered, 
however, that Lisp was capable of doing 
things that the Fortran class of languages 
couldn't do. It could be used to create 
arbitrary data structures, for instance — 
trees and networks with relations among 
all the parts — and for programs that could 
pluck the connections of these data 
structures like a Flamenco guitarist. 

Lisp is the common language of this 
group; a few model changes (like Scheme) 
aside, it is basically the Church Latin of the 
AI cult. (Indeed, it is based on the work of 
a man named Church.) 

THE PIT 

Like many subcultures, the AI world 
captures you without your realizing — 
because once you're really into the ideas, 
and used to rich conversations with other 
AI freaks, you find ordinary civilians 
about as interesting to talk to as fence- 
posts. The real intelligence in Artificial 
Intelligence is staggering; it includes some 
of the finest minds of modern times. 

The principal ethic is that of brilliance 
and originality; while the people work very 
hard, it is perhaps the novelty and vision of 
their programs that excite the most 
admiration from fellow members. 

A I is a way of life, an ever-receding 
frontier. Even if anything is ever 
definitively settled in this field, it will go on 
forever. And for its inhabitants, it doesn't 
really have to lead to anything. □ 



90 



CREATIVE COMPUTING 



HAYDEN SOFTWARE . . . 



■•^"♦^■^^^^^^♦^^^■^^■^♦♦••••^■♦^■♦♦♦♦♦♦♦♦♦^■•♦♦♦^♦•♦•♦♦•♦♦♦♦♦♦♦■•♦^■♦♦•^ 



New! 

DATA MANAGER: A Data Base 

Management System and Mailing List 

(Lutus) Do what the big machines do with your 
Apple II! This all-machine language program 
stores up to 96,000 alphanumeric characters 
on just one floppy disk. Powerful cursor-based 
editor facilitates easy information alteration in 
the data base. Program permits the user to sort 
on any key and subfiles on any search. Retrieve 
data in any combination of categories from up 
to 32,000 characters within one-half second. 
Choose between screen display or serial print- 
out (via the game paddle connector). Ideal for 
mailing lists, data banks, index files, or any 
other facts, files, or statistics that are begging 
to be organized. #04909, Apple II Disk Version, 
$49.95. 

New! 

APPLE™ ASSEMBLY 

LANGUAGE DEVELOPMENT SYSTEM 

(Lutus) Enter the world of machine language 
programming with this brand new, winning, 
utility program. This very capable Assembler/ 
Editor/Formatter allows you to write and 
modify your language programs quickly and 
easily. Features a cursor-based editor, local and 
global labels, and disk-based macros which per- 
mit you to incorporate frequently used sub- 
routines into any program. Formprint program 
lets you print a formatted listing of source and 
object files. #04609, Apple II Disk Version, 
$39. 95. 



AUW.W » WmUWAWWfflW^^ffl&:ffl^^ 







Hayden Book 
Company, Inc. 

50 Essex Street, Rochelle Park, NJ 07662 



or Call Toll Free, 24 hours a day, 
(1-800-827-3777, ext. 302)* 

TO CHARGE YOUR ORDER TO 
Master Charge or Visa! 
Minimum order is $ 10.00; 
Customer pays postage and handling. 
From Missouri, call 
1-800-892-7655, ext. 302. 

CIRCLE 199 ON READER SERVICE CARD 



New! 

MICROCOMPUTER CIRCUIT 

ANALYSIS PROGRAM 

(Savon) Minimize your time calculating the 
frequency response of a circuit with this new 
program. MCAP performs a linear voltage, 
impedence, or transfer impedence analysis of 
an electronic circuit. Enter the circuit des- 
cription in a systematic nodal notation and the 
program then calculates, lists and plots the 
circuit's frequency response. MCAP readily 
analyzes circuits with up to 15 nodes — larger 
circuits can be divided into subsections for 
individual analysis. And, the circuits analyzed 
can contain any or all of the six types of com- 
ponents: resistors, capacitors, inductors, bi- 
polar transistors, FETs, and Op-Amps. Educa- 
tors in particular will find this a strong 
applications program for circuit analysis. 
#04504, Apple II; #04501, PET; each Cassette 
$24. 95. 




For those who prefer their 
ready-to-run programs 

WELL DONE! 



91 



CREATIVE COMPUTING 



Bibli ograph y .cont'd. . . 

ment of Computer Science Technical 
Report 4-7, May 1968. 

Carl Hewitt, "Viewing Control Structures 
as Patterns of Passing Messages." MIT AI 
Lab Memo 410, December 1976. 

C. Hewitt, G. Attardi and H. Lieberman, 
"Security and Modularity in Message 
Passing." MIT AI Lab Working Paper 
180, also in proceedings of First Inter- 
national Conference on Distributed 
Computing Systems, Huntsville, Ala- 
bama, October 1979. 

Guy L. Steele and Gerald J. Sussman, 
"Constraints." MIT AI Lab Memo 502, 



November 1978. 

Alan Borning, "Thinglab — A Constraint- 
Oriented Simulation Laboratory." Xerox 
Palo Alto Research Center; also Stanford 
Computer Science Dept. Report STAN- 
CS-79-746. 

William A. Kornfeld, "A Synthesis of 
Language Ideas for AI Control Struc- 
tures." MIT AI Working Paper #201, July 
1980. 

3. AI Actor Languages 

Carl Hewitt, "PLANNER — A Language 
for Manipulating Models and Proving 
Theorems in a Robot." Proceedings of the 
International Joint Conference on Arti- 



ficial Intelligence, 1969. 

Kenneth M. Kahn, "An Actor-Based 
Computer Animation Language." MIT AI 
Working Paper #120, February 1976. 
(Also complete in this issue of Creative 
Computing.) 

D. C. Smith, "Pygmalion: A Creative 
Programming Environment." Stanford AI 
Memo #260, June 1975. 

Paul Pangaro, Seth Steinberg, Jim Davis 
and Ben McCann, "EOM: A Graphically- 
Scripted, Simulation-Based Animation 
System." Architecture Machine Group, 
MIT, August 1977. Available for $4 from 
Paul Pangaro, 212 E 48th St., New York, 
NY 10017. 



UNPLANNED NUMBERS OF ACTORS COME AND GO IN CORE MEMORY, WITHOUT CENTRAL CONTROL. 



Actors just deleted 



Actor being 
created 



ACTORS 



private 

"instance variables 

of the Actor 



CLASS 




There are two schools of control 
structure in Actor languages. The Small- 
talk school, seeking orderly growth, 
normal subroutining structure: essentially, 
each actor relinquishes control to the actor 
which originally summoned it. The Hewitt 
school, concerned with theoretical issues 
of artificial intelligence, allows "hairy" 
control structures of arbitrary topology — 
the ultimate rebuke to the structured 
programming ideology. 



92 



CREATIVE COMPUTING 



Try to beat our prices! 



SUPERBRAIN by Intertec 



NORTH STAR HORIZON 



® 




\ 



Self contained computer with dual disks and 
two RS232C ports. Complete with CP M 2.2 
and BASIC. ^OCOC 
32K Double Density, List $2995 . Y^Dob 
64K Double Density, List $3345 $2883 

64K Mini Micro Mart upgraded 
to Quad Density SPECIAL $3395 

VIDEO TERMINALS 

NEW EMULATOR (Intertec), List $895$ 749 
NEW INTERTUBE lllList $895 ONLY $ 749 
SOROC 120, List $995 SPECIAL $ 729 

1Q140, List $1495 SPECIAL $1149 

PERKIN ELMER 550, List $997 $ 799 

with anti glare screen, $1027 $ 829 

HAZELTINE 1410. List $900 $ 749 

1420 $ 849 

1500, List $1225 $ 879 

1510, List $1395 $1089 

1520, List $1650 $1389 

ADDS R 20, List $995 $ 945 

LEAR SIEGLER ADM3A, Assembled $ 849 

TELEVIDEO 912C, List $950 $ 789 

920C, List $1030 $ 849 

PRINTERS 

ANADEX DP 8000 $ 849 

DP-9500, List $1650 $1399 

DP-9501. List $1650 $1399 

PAPER TIGER IDS 440, List $995 $ 895 

w graphics op., incl. buffer, $1195 . . . $ 989 

NEW I0S PAPERTIGER 460 . List 1295 $1149 

NEW IDS PAPERTIGER 460G List $1394 $1199 

NEC Spinwriters Call for Price 

TELETYPE 43 KSR $1087 

CENTRONICS 

730 1 parallel interface ... NEW LOW $679 

737 parallel interface . . SUPER VALUE $849 

779 w Tractor, List $1350 $1049 

702 w /Tractor, VFU, List $2480 $1995 

703 w Tractor, VFU, List $2975 $2395 

704 w Tractor, VFU, List $2350 $1995 

Tl 810 Basic, List $1895 $1695 

810 serial &■ Centronics style 

parallel interface, List $1940 $1735 

810 w full ASCII (U LC), Vertical 

Forms Control, Compressed Print . . $1895 

Tl 820 KSR, List $2165 $1895 

Tl 745 w/full ASCII, List $1695 $1399 

COMPRINT 912 w parallel interface $ 559 

912 w serial interface, List $699 $ 589 

AXIOM IMP I $ 699 

MICROTEK, List $750 $ 675 

OKIDATA Microline 80, List $949 649 

Tractor Feed Option $ 99 

RS232 Serial Interface $ 89 



HORIZON 1 ASSEMBLED & TESTED 

32K, Double Density, List $2695 $2279 

32K, Quad Density, List $2995 $2539 

HORIZON 2 ASSEMBLED & TESTED 

32K, Double Density, List $3095 $2619 

32K, Quad Density, List $3595 $3049 

48K, Double Density, List $3590 $3039 

48K, Quad Density, List $4090 $3469 

64K, Double Density, List $3830 $3239 

64K, Quad Density, List $4330 $3669 

LIMITED QUANTITY OF 
HORIZON 2 KITS AVAILABLE 

FLOPPY DISK SYSTEMS 

NORTH STAR MDS A 
Assembled, List $899 SPECIAL $ 719 

Kit Version, List $799 $ 669 

MORROWTHINKERTOYS" Discus2D, 
List $1 199 OUR PRICE $1019* 

Discus 2D, dual drive, List $1994 $1694* 

Discus 2 ♦ 2, A&T, List $1549 $1319* 

Dual Discus 2 ♦ 2, A&T, List $2748 . . . $2335* 
"Now includes CP M" 2.2 

MICROMATION Megabox. DD w/ 

8" drives, 1 megabyte, List $2295 $1949 

2 megabyte, List $3095 $2629 

MICROPOLIS 1041 MacroFloppy" 

w /enclosure (no P.S.), List $695 $ 625 

1042 MacroFloppy w case & AC PS. . $ 709 
1053 Dual Meta Floppy" , List $1895 . . . $1695 



VIDEO BOARDS 

I/O Mapped 
SD COMPUTER VDB 8024, kit, List $370$319t 

Assembled, List $470 $ 399 t 

XITEX SCT 100K, Kit ONLY $154.95 

SCT 100A Assembled $174 95 

SSM VB2 I/O. Kit, List $199 Call 

Assembled & Tested. List $269 Call 

Memory Mapped 
SSM VB1C, 16x64, Kit, List $179 

Assembled & Tested, List $242 
SSM VB3, 80 Char ,4MHz,Kit, List $48f Call 

4 MHz, A&T, List $565 Call 

iNTERSYSTEMS, 16x64, A&T, List $165 $149 



ESCON CONVERSION 
FOR IBM SELECTRIC 

Complete w/ microprocessor controller and 
power supply. Factory built User installs 
solenoid assembly or it can be done at Escon 
factory at nominal cost. 

Parallel (TPS 80, Sorcerer, etc.), $575 $514 

RS232 Standard Serial, List $599 534 

IEEb-488 (for PET), List $660 584 

TRS-80 Cable 25 



CALIFORNIA COMPUTER SYSTEMS 

280 CPU BOARDS List $299 $269 

DISK CONTROLLER 2422 List $399 ... S359 

32 CASE STATIC List $710 $599 

64K DYNAMIC BOARD List $699 $589 



CPU BOARDS 

(assembled unless noted) 
NORTH STAR Z80A (ZPB A A), $299 $254 
CROMEMCO 4 MHz (ZPU W), List $395 $335 

4 MHz (SCC W), List $450 $382 

INTERSYSTEMS (formerly Ithaca Audio) 

new Series II Z 80, 4 MHz. List $395 . . . $349 
SSM CB1 8080 A&T List $252 

CB1A Kit, List $183 

CB2 Z 80 A&T, List $344 

CB2Kit, List $260 

DELTA Z 80, with I O $289 

SD SBC 100, List $350 $298 

SBC 100 Kit, List $295 $250 

SBC 200, List $400 $332 

SBC 200 Kit, List $320 $272 

MEMORY BOARDS 



32K SD ExpandoRAM Kit 
ONLY $249 r 

ONLY $159 without RAM chips 



NORTH STAR 16K Dynamic RAM Board, 

A&T (RAM 16-A/A), List $499 $420 

16K Kit Version, List $449 . . . SPECIAL $299 

32K A&T (RAM 32/A), List $739 $620 

32K Kit, List $669 SPECIAL $499 

CROMEMCO 16KZ-W, List $49o $419 

64KZ W, List $1795 1485 

MEASUREMENT SYSTEMS & CONTROLS 

(Guaranteed performance, incl. labor parts 1 yr) 
DM6400 64K Board w/all 64K, $795 . . . $659 

DM4800 with 48K, List $695 $589 

DM3200 with 32K, List $595 $509 

DMB6400 64K Board w/all 64K $859 

DMB4800 with 48K $789 

MORROW SuperRAM all static, all A&T 

16K, 4 MHz or 2 MHz, List $349 $299 

32K, 4 MHz, List $699 $629 

16K Memory Master, List $399 $339 

24K Memory Master, List $549 $465 

INTERSYSTEMS (formerly Ithaca Audio) 

8K Static 2 MHz, A&T, List $165 $149 

8K Static 4 MHz, A&T, List $195 $176 

16K Static 2 MHz, A&T, List $475 $427 

16K Static 4 MHz, A&T, List $495 $445 

64K Dynamic, List $995 $895 

CALIFORNIA COMPUTER 
16K Static, A&T, List $349.95 $259 

FLOPPY DISK 
CONTROLLER BOARDS 

NORTH STAR, DD, 

Assembled, List $499 $399 

MORROW Disk Jockey 1, A&T ($213) . $189 

Disk Jockey 2D, A&T, List $479 $429 

SD Versafloppy 1, Kit, List $250 $212 t 

Versafloppy II, DD Kit, List $350 $297 t 

Versafloppy II, DD, A&T, List $430 $365 t 

DELTA double density A&T ($385) $345 

CONDUCTOR, double density A&T . . . $269 
INTERSYSTEMS FDC 2, A&T, $495 . . $439 
MICROMATION Doubler, DD, A&T . . $399 
TARBELL Floppy Disk Interface Kit $199 

double density, A&T, List $495 $444 



NEW CROMEMCO 


DOUBLE DENSITY 


DISK CONTROLLER 


List $595 OUR PRICE $505 



SHIPPING AND INSURANCE: Add $2 50 for boards. $6 for Selectric Converter or Floppy Disk Drives. $7 50 for Floppy Disk Systems. $15 for Horizon SHIPPED FREIGHT COLLECT: SuperBrain, Centronics 

and T.I. printers. Contact us for shipping information on other terminals and printers. 

Above prices reflect a 2% cash discount (order prepaid prior to shipment) Add 2% to prices for credit card orders, C.O.D.'s, etc Prices are sub|ect to change and offers subject to withdrawal without notice 

- WRITE FOR FREE CATALOG - 

Mini Micro Mart, Inc. 

1618 James Street, Syracuse NY 13203 (315) 422 4467 TWX 710-541-0431 



nori p ian nw QPAnPR QPRVIPP r APn 



Bibliography, cont'd.. . 




Some Actor languages (including 
Smalltalk 76) have a feature called 
"inheritance" whereby Actors may be 
defined as special cases of one another. 

This involves a tree of classes. If 
class A is an ancestor of class B, then 
class A is a superclass of class B, and B 
is a subclass of A. A class inherits all of 
the characteristics of its superclasses. 
This turns out to be an excellent 
organizational mechanism for putting 
different types of behavior at different 
levels of abstraction. You can define all 
kinds of Bs that have all the properties 
of A — and then special ones of their 
own. 




Henry Lieberman and Carl Hewitt, "A 
Session with Tinker." MIT AI Lab Memo 
#577, September 1980. 

4. Smalltalk 

Alan Kay, "A Personal Computer for 
Children of All Ages," Proceedings of the 
ACM National Conference, August 1972. 

Alan Kay, "Microelectronics and the 
Personal Computer," Scientific American, 
September 1977, 230-244. 

Alan Kay and Adele Goldberg, "Personal 
Dynamic Media," IEEE Computer 
March 1977, 31-41. 

Scott Warren and Dennis Abbe, "Intro- 
ducing Rosetta Smalltalk." Datamation, 
May 1980, 144-158. 

Adele Goldberg and Alan Kay (eds.), 
Smalltalk-72 Instruction Manual. Xerox 
Palo Alto Research Center, 1976. 

Rosetta Smalltalk Prototype Language 
Manual. Rosetta, Inc., 5925 Kirby Suite 
215, Houston, TX 77005. 

Daniel H. H. Ingals, "The Smalltalk-76 
Programming System: Design and Imple- 
mentation." Conference Record of the 



Eifth Annual Symposium on Principles of 
Programming Languages, Tucson, Ari- 
zona, January 1978, 9-16. 

5. New, Obscure and Important 
Topics in Computer Languages 

John Backus, "Can Programming Be 
Liberated from the von Neumann Style? A 
functional style and its algebra of pro- 
grams." Communications of the ACM, 
August 1978, 613-641. 

Kenneth E. Iverson, "Operators." ACM 
Transactions on Programming Languages 
and Systems, October 1979, 161-176. 

John R. Levine, "Why A Lisp-Based 
Command Language." ACM SIGPLAN 
Notices, May 1980, 49-53. 

Marc A. Kaplan and Jeffrey D. Ullman, 
"A Scheme for the Automatic Inference of 
Variable Types." Journal of the ACM, 
January 1980, 128-145. 

D. P. Friedman and D. S. Wise, "Cons 
Should Not Evaluate Its Arguments," in S. 
Michaelson and R. Milner (eds.). Auto- 
mata of Languages and Programming. 
Edinburgh University Press, 1976, 257- 
284. □ 



94 



CREATIVE COMPUTING 




The biggest and best computer show ever to be in the 
Boston area is ready to take place. Make sure you take 
it in. 

Over $50 million worth of software and hardware for 
business, government, home and personal use will 
be featured at the new Northeast Computer 
Show in November. Computers from $150 to 
$250,000, mini and micro computers, data- 
and word-processing equipment, tele- 
communications, office machines, periph- 
eral equipment and services will all be on 
display and for sale right on the spot. 

All the major names like IBM, Xerox, 
Radio Shack and Apple will be there. There 
will be conferences on business uses of 
small to medium sized computers, and how 
to make purchasing evaluations. 
Plus, robots, computerized video games, 
computer art and computer music will enter- 
tain and educate kids, spouses and people 
who don't know a program from a memory disk. 

It's going to be a great show for everyone. 
Admission for adults is only $5. The public is 
invited, and no pre-registration is necessary. 
Don't miss the coming of the computers. Show up for the show. 



BOSTON 

HYNES AUDITORIUM, PRUDENTIAL CENTER 
THURSDAY-SUNDAY, NOVEMBER 20-23 

11 A.M. TO 9 P.M. THURS.-SAT, 11 A.M. TO 5 P.M. SUN 



Produced by National Computer Shows, 824 Boylston Street, Chestnut Hill, MA 02167, Telephone (617) 739-2000. 



NOVEMBER 1980 



95 



Photos by David Ahl 




Making 
of a 

NorthStaf 

System 




1. Incoming boards. Boards arrive at NorthStar fully stuffed 
with components and soldered. They are then tested upon 
arrival. 

2. Heat testing area. The elevated temperature test is at 106 
degrees F. The boards are left in this room for 48 hours. 
Periodically during that time the machines are tested. 

3. Panoramic view of the Assemble line. (Just after lunch 
hour, the line was not fully operational.) Testing is first 
done on individual subassemblies rather than by complete 
systems, therefore when a system is being assembled the 
probability of failure is much lower. The final system itself 
is also tested. 

4. Across the assembly line. The hanging plants and those 
being prepared to the left are not a NorthStar product. 

5. Systems test. When a completed system comes out of 
production, it is configured for an individual customer and 
tested completely as a system. 

6. Hard disk prior to being mounted in the cabinet. Hard 
disks are guaranteed for an error rate of no greater than 1 
bit in10 10 bits. In terms of operation, it must run 36 hours 
absolutely error free. 

7. Final test. Final system configuration is tested as it will 
be delivered to the customer. 



96 



CREATIVE COMPUTING 



Is BASIC too SLOW? 



OSBORNE/ 

McGraw-Hill's 

Assembly Language 

books help you 
speed up your 
programs 



Assembly language programming Is fast and efficient. For 
some applications, like computer animation or close control of 
peripherals, Its speed makes It Indlspenslble. 

Now Osbome/McGraw-HIII helps to simplify assembly 
language programming. You needn't know anything about 
assembly language to use our ALP series. Each book Is a 
straightforward, self-teaching textbook that is both 
concise and easy to understand. Each book 
explains assembly language programming, 

describes the function of assemblers, 

■ 

structured programming, and presents 

over 80 fully debugged practical l&^^^i^^M 1 * 

programming examples. iLmom. "AJtV 





Name. 



Address. 



City. 



State. 



ZIP. 



Phone. 



HOW TO SHIP. 



f\ OSBORNE/ McGraw-Hill 

630 Bancroft Way, Dept. L8 
Berkeley, CA 947 lO 



m 



NOVEMBER 1980 



Book 


Price 


Qty 


Amount 


6502 Assembly Language Programming 


$16.99 






ZSO Assembly Language Programming 


$16.99 






68OO Assembly Language Programming 


$15.99 






8080A/8085 Assembly Language Programming 


$15.99 






Z8OOO Assembly Language Programming 


$19.99 






6809 Assembly Language Programming 

available January 1 98 1 


$16.99 






The 8086 Book 


$16.99 






To order, return coupon with check or money Tax 
order. Include 75c per item tor 4th class mail, 
$ 1 .25 per book UPS, or $2.50 per book air mail in the U. S. Shipping 






California residents also include local sales tax. -irvrAi 
To place an order by phone, call: 41 5/548-2805 TOTAL 





CIRCLE 167 ON READER SERVICE CARD 



97 



Robert Montgomery 



Input of data from the keyboard is easy 
in Basic, isn 7 it? You just write INPUT 
N", the computer responds with a 
question mark, and the operator 
provides an answer. Let's look at some 
of the things which are wrong with this 
method and how to fix them. 



Let's assume that you're writing a 
program in Basic* to find out where your 
money goes. The way you plan it, you'll 
enter each check you write, and then be 
able to find out how much you paid to 
whom and for what. You set up a coding 
system, so that each household account 
has a number, as well as each of the persons 
you sent money to. Since you plan to 
record the entries on tape (or print a list as 
you go along), you'll also want the check 
number and the date, as well as the amount 
and the payee and account numbers. 

You envision a screen display of all of 
the data for each transaction, and you 
want to be able to check the entries and 
correct errors before the data are stored or 
processed. Figure 1 shows how this screen 
might look just after you answer "N" to 
"CORRECTIONS (Y OR N)?" 

A professional job of 
programming should 
stand up to the test of 
an unskilled operator. 

As shown in Figure 2, the program 
segment which produced this result uses 
"INPUT" to obtain the required data, all 
of which are entered as simple variables. 

The display doesn't look too bad. But 
let's see what happens when the operator 
makes mistakes. Look at Figure 3. 

There are now several problems, not 
all of which are visible. 

1. Obviously, the date can't be "32". 
Equally obviously, you can write an error- 
trapping routine which will go tilt if D is 
less than 1 or more than 31. If you want to 
be extra sure, you can even write a "30 days 
hath September ..." routine. Other data 
are also subject to logical limits. 

2. The transaction number can't be 
fractional (not in my checkbook, at least). 
And such entries are easy to make if the 
operator thinks he's entering the amount. 
You should add a routine which calls an 
error message if the transaction number, 
the date, the account number or the payee 
number is not an integer. 

3. The operator made another easy 
error in entering the payee name rather 

Robert Montgomery, 67 Turtle Back Rd. West, New 
Canaan, CT 06840. 




TRANSACTIONS FOR 


THE 


MONTH 


OF 


AUGUST 


1980 


DATE? 23 












TRANSACTION NUMBER? 1232 












AMOUNT? 56.24 












PAYEE NUMBER? 71 












ACCOUNT NUMBER? 32 












CORRECTIONS <Y OR N>? N 













Figure 1 ' *TRS-80 Level II Basic is the dialect used in the illustrations. 



100 


CLS 




110 


PRINT 


TAB(IO) 'TRANSACTIONS FOR THE MONTH OF ";M*»Y* 


120 


PRINT 




150 


INPUT 


■DATE'* D 


160 


PRINT 




200 


INPUT 


•TRANSACTION NUMBER' i T 


210 


PRINT 




300 


INPUT 


■AMOUNT"* M 


310 


PRINT 




400 


INPUT 


•PAYEE NUMBER'; P 


410 


PRINT 




500 


INPUT 


•ACCOUNT NUMBER'; A 


510 


PRINT 




600 


INPUT 


•CORRECTIONS (Y OR N>"; A$ 


610 


IF A* = 


• ■Y" THEN 100 


620 


IF A* 


<> 'N" THEN GOSUB 100 : GOTO 60 


630 


• • i i p 


•ROCESSING STEPS FOR EACH TRANSACTION 


640 


GOTO 100 : ,,,, ENTER NEXT TRANSACTION 



Figure 2 



TRANSACTIONS FOR THE 


MONTH 


OF 


AUGUST 


1980 


DATE? 32 












TRANSACTION NUMBER? 


1232.15 










AMOUNT? 56.24 












PAYEE NUMBER? JONES 

?REDO 

PAYEE NUMBER? 71 


PHARMACY 










ACCOUNT NUMBER? 












CORRECTIONS (Y OR N) 


? N 











Figure 3 



98 



CREATIVE COMPUTING 



r 






tock 



Keep the data you need to make timely investment decisions at 
your fingertips with this incredibly powerful investment tool. 
Considerable effort has gone into methods of tilting the odds in the 
investment game. Out of this has come the discovery that the 
strategy of hedging listed optionsagainst common stocks can tilt 
the odds drastically. In fact, it can be more conservative and more 
consistently profitable than the simple buying and selling of stock. 

■ I II lllll II I ■• I II ■ 1 1 •••■■ I •■■ 1 1 1 »l 1 1 •■■ I ■ I II III 1 1 1 1 II llll 1 1 1 1 1 III 1 1 ■ 1 1 1 II 1 1 ■ I ■ III 1 1 1 1 1 III 1 1 II I ■ I Mil 1 1 1 1 1 1 III 1 1 1 1 1 II 1 1 • 1 1 1 1 II 1 1 1 1 1 1 1 1 II 1 1 1 1 1 1 1 ■ 1 1 1 1 M 1 1 



The four programs in this 
package are designed to be used 
in the real world, and include the 
effects of commissions, margin 
interest and dividends, where 
applicable. Possible investment 
attitudes, the listed option mar- 
kets, puts and calls and option 
strategies are covered in exten- 
sive documentation. 

The program Option presents 
important indices of both open- 
ing and closing call option trans- 
actions. The manual includes 
sample runs illustrating combi- 
nation strategies with covered 
and uncovered calls, and covered 
and uncovered straddles recieve 
detailed treatment. 



The Opgraph program presents a 
graph or a table, as the user 
chooses, of profit from any 
combination of six basic posi- 
tions: long or short a stock, long 
or short a call and long or short a 



put. Sample runs are presented 
which cover hedging with calls, 
out-of-t he-money hedges and in- 
the-money hedges. 

Newprem enables the user to 
predict the future premiums of an 
option at whatever time and 
future stock price the user se- 
lects. This method requires the 
establishment of a data base of 
historical option premiums in 
whatever detail the user desires. 

Finally, Portval enables the 
user to determine on an item by 
item basis, the cost, current value 
per share, total current value and 
capital gain of a portfolio con- 
sisting of long and short stock, 
and long and short option posi- 
tions. This program assists the 
user in keeping a readily available 
and easily updatable record of his 
portfolio and, at the same time, 
assists him in measuring his 
progress towards financial 
success. 



In order for an investor to 
continually improve his perfor- 
mance it is necessary for him to 
refer to past performance; this 
requires useful records. Finally, 
he should constantly be evaluat- 
ing his performances to assure 
himself he is playing the right 
game. 

The Stock and Options Trading 
Analysis package is available for 
the 16K TRS-80 Level II on 
cassette (CS-3306) and disk (CS- 
3801) for $99.95. Creative Com- 
puting Software should be avail- 
able at your local computer store. 
If your favorite retailer does not 
stock the software you need, have 
him call our retail marketing 
department at the number below. 
Or you can order directly from 
Creative Computing Software, 
Dept AGII; P.O. Box 789-M, 
Morristown, NJ 07960. Visa, 
MasterCard, or American Express 
are also welcome. For faster 
service, call in your bank card 
order toll free to 800-631-8112. In 
NJ call 201-540-0445. 



TRS-80 Professional Software 



& dr 4T 



NOVEMBER 1980 



99 



CIRCLE 300 ON READER SERVICE CARD 



Input, cont'd. . . 

than the payee number. The system error 
message "REDO" is already available to 
trap this one, for names won't be accepted 
when the computer expects a number. The 
problem here is that "REDO" printed on 
the next line and messed up your elegant 
display. The answer to this one is to enter 
all data as string variables, and then 
convert them to numbers as required. That 
way, you can control where and when error 
messages will print. 

4. There's another argument in favor 
of using strings. Sometimes, you may want 
an alphabetic response in answer to 
"DATE?" For example, you need an exit 
routine, in order to go on to other things 
when all transactions have been entered. 
Answering "E" (for exit) in response to 
"DATE?" might be the best way to do this. 
You may also want the convenience of 
answering "N" (for no change) for any 
datum, if the answer is the same as the last 
transaction, or if you are making correc- 
tions. And you might want to permit an 
answer like "+" when the date or the 
transaction number is to be incremented 
by one from the last entry. 

5. Because your error messages mess 
up the screen, just like "REDO", you want 
to control exactly where each question 
prints. And, if an error message is 
displayed, you want the screen restored to 
its previous condition. 

Because your error 
messages can otherwise 
mess up the screen you 
want to control exactly 
where each question 
prints. And, if an error 
message is displayed, 
you want the screen 
restored to its previous 
condition. 

6. When entering "ACCOUNT 
NUMBER?" the operator hit the 
"ENTER" key without entering a number 
(or, possibly, got a keybounce when 
entering "PAYEE NUMBER?"). Either 
way, the account number is whatever it was 
in the last transaction — and that number 
doesn't show on the screen. This condition 
should also generate an error message. 

Figure 4 shows a modified program 
segment designed to meet these require- 
ments. 

We've added a lot of code to a simple 
program, but let's see what has been 
accomplished. 

1. Each datum is now entered as a 
string — A$ is used repetitively for this 
purpose. It is nulled (A$ = "") before 
each use, so that its previous meaning is 
erased. If A$ = "N", the previous value 



100 
110 
120 
150 
160 
170 

180 
200 
210 
220 

230 
300 
310 
320 
330 
400 
410 
420 
430 

500 
510 
520 
530 

590 
600 
610 
620 
630 
640 



CLS 

PRINT TAB(IO) 'TRANSACTIONS FOR THE MONTH OF -;M$;Y* 

PRINT 



A$ - 



P ■ 128 



PRINT e Pf 'DATE' J : INPUT A$ 

IF A$ - 'E' THEN 2006 ELSE IF A$ = "N' THEN 200 ELSE IF A* = "+' 

THEN D = D ♦ 1 t GOTO 180 ELSE D = VAL(A$) 

IF D < 1 OR D >31 OR D <> INT(D) THEN GOSUB 1000 I GOTO 150 

A* m •• | p ■ 256 

PRINT (? Ft "TRANSACTION NUMBER- * t INPUT A* 

IF A* = -N- THEN 300 ELSE IF A* = ■♦• THEN T = T + 1 : GOTO 230 

ELSE T ■ VAL <A*> 

IF T <1 OR T >9999 OR T <> INT(T) THEN GOSUB 10 00 : GOTO 20 

A* = ■■ : p = 384 

PRINT 6 Pf -AMOUNT-; : INPUT A* 

IF A* ■ -N- THEN 400 ELSE M - UAL<A*> 

IF M >« 1E6 OR <M = AND A* O "0') THEN GOSUB 10 00 t GOTO 30 

A* = ■" : p = 512 

PRINT 6 Pt -PAYEE NUMBER- i X INPUT A* 

IF A* = -N- THEN 500 ELSE N ■ VAL(A$) 

IF N < 1 OR N > 99 OR N <> INT(N) THEN GOSUB 100 



GOTO 400 ELSE 



IF P$(N) = »• THEN GOSUB 1000 



GOTO 400 



A$ = 



P = 640 



PRINT Pf -ACCOUNT NUMBER- J : INPUT A$ 

IF A$ = 'N- THEN 600 ELSE A = VAL(A$) 

IF A <1 OR A > 99 OR A <> INT (A) THEN GOSUB 1000 

IF A*<A> = ■■ THEN GOSUB 1000 : GOTO 500 

PRINT 

INPUT -CORRECTIONS <Y OR N)-» A* 

IF A$='Y- THEN 100 

IF A* <> -N- THEN GOSUB 100 : GOTO 60 

• • • • PROCESSING STEPS FOR EACH TRANSACTION 

GOTO 100 t ■ • • • ENTER NEXT TRANSACTION 



GOTO 500 ELSE 



1000 PRINT Pf CHR$<30>; 

1010 FOR I = 1 TO 500 

1020 NEXT 

1030 PRINT (? Pf CHR$(30) 

1100 RETURN 



■ERROR — PLEASE REENTER- J 



Figure 4 

of the numerical datum is unaffected, 
because an "N" results in bypassing the 
statement in which the numerical datum is 
set equal to VAL(A$). A$ = "E", in 
answer to "DATE?", results in exit from 
the transaction input routine, and 
A$ = "+", in answer to "TRANSACTION 
NUMBER?" or "DATE?" results in 
incrementing the previous datum by one, 
but still subject to the error check. 

2. An error message subroutine 
begins at Line 1000. Note that it prints at 
position "P", where the erroneously- 
answered question was displayed, and that 
it first erases the line on which the message 
will print, using CHR$(30) for this 
purpose. It is displayed while a variable 
"K" loops uselessly from 1 to 500 and then 
erases itself. 

3. Errors are recognized in the 
following cases: 

a. DA TE D less than 1, or D more 
than 31, or D not an integer. Since 
A$ was nulled, "ENTER" without 
an entry results in VAL(A$) = 0, 
which is less than 1, and an 
additional error check for this 
condition is unnecessary. 

b. TRANSACTION NUMBER T 
less than 1 , or more than 9999, or T 
not an integer. You'll want to 
change this if you must provide for 
transactions numbered past 9999. 

c. AMOUNT M greater than or 
equal to $1,000,000 (1E6). Note 
also, however, that could be a 
valid answer. Accordingly, an error 
message is also triggered if M = 
and A$ is not equal to "0". As A$ 



would not be equal to "0" unless it 
were still a null, or a response like 
"XXX" were entered. 

d. PA YEE NUMBER The illus- 
tration assumed that payee names 
are recorded in a string array called 
P$, which can contain 99 names but 
may contain less. Thus, an error 
occurs, first, if N is less than 1 or 
more than 99, or is not an integer. If 
the entry passes this test, an error 
message still occurs if P$(N) - "", 
which is to say that this particular 
name is not being used. Note that 
these tests must be separated and 
conducted in this order. Otherwise, 
N = 123, say, could result in a "BS 
ERROR" and a program crash 
when the computer finds that 
P$(123) is not an allowable sub- 
script. 

e. ACCOUNT NUMBER An as- 
sumption is again made that there 
are 99 accounts, not all of which are 
named. Thus, you have an error if 
A is less than 1, more than 99, or 
not an integer, and also if 
A$(A) = '" 

How does the screen look now? 
Exactly the same, if there are no input 
errors. If mistakes were made on entry, the 
display is not disturbed. However, there 
are still some problems. The screen is not 
as easy to read as it might be when the time 
comes to check it over before answering 
"CORRECTIONS (Y OR N)?" Printing 
the data justified to the right margin will 
help, and it would be even better if 
Account Number 32 were printed as 



100 



CREATIVE COMPUTING 



TRANSACTIONS 


FOR 


THE 


MONTH OF 


AUGUST 


1980 


DATE 










23 AUGUST 1980 


TRANSACTION 


NUMBER 










1232 


AMOUNT 










$ 


56. 2« 


PAYEE NAME 










JONES 


PHARMACY 


ACCOUNT NAME 








DRUGS AND MEDICINES 


CORRECTIONS 


(Y OR N>? N 













Figure 5 



"DRUGS AND MEDICINES" rather 
than repeating what might have been an 
erroneous entry. The same thing applies to 
the Payee; "JONES PHARMACY" would 
be a lot more useful in checking for errors 
than repeating Payee Number 71. 

Figure 5 shows the screen as it should 
be for easier checking. Note that it will not 
be changed by the use of "N" or "+". 

Note that "ACCOUNT NUMBER?" 
and "PAYEE NUMBER?" change to 
"ACCOUNT NAME" AND "PAYEE 
NAME" through the use of carefully 
placed "PRINT CHR$(30)" statements in 
Lines 190, 240, 340, 440 and 540; that "N" 
answers result in branching to these lines, 
and that the TAB placement is computed 
where the length of the string is variable, as 
in Lines 440 and 540. 

Figure 6 shows the program segment 
in its final form. 



Was it worth it? It runs to almost 1 100 
bytes, and that's a lot of key strokes, as well 
as a lot of memory. First, of course, its 
length can be reduced by half by combin- 
ing line numbers, omitting unnecessary 
spaces and using subroutines for repetitive 
operations. But it's still a lot more complex 
than the program you saw in Figure 2. 

A professional job of programming 
should stand up to the test of an unskilled 
operator. And you're an unskilled oper- 
ator when it comes to input, proficient as 
you may be as a programmer. Professional 
displays are not just a matter of pride; they 
increase operator confidence and pride in 
input accuracy. And almost any error trap 
you can devise is a sound investment; 
errors caught at the input stage are easy to 
fix. They're another matter when they 
survive to invalidate your final analytical 
reports. □ 



Figure 6 



100 CLS 




110 PRINT TAB(IO) "TRANSACTIONS FOR THE MONTH OF ' ;M$JY* 




120 PRINT 




150 A* = ' ■ : P = 128 




160 PRINT @ P» 'DATE" J : INPUT A$ 




170 IF A* = "E" THEN 2000 ELSE IF A$ - "N" THEN 190 ELSE IF A$ = 


• + " 


THEN D = D + 1 t GOTO 180 FJ SE D = UAL(A$) 




180 IF D < 1 OR D >31 OR D <> INT(D) THEN GOSUB 100 I GOTO 150 




\9& PRINT 6 P ♦ 4. CHR*<30>; TAB (47 - LEN(M*>> USING "#*"; D» J 




PRINT ' 'f Htf Y • 




200 A* = "" : P = 256 




210 PRINT Pf "TRANSACTION NUMBER" ♦ : INPUT A* 




220 IF A* ■ "N" THEN 240 ELSE IF A* = "+" THEN T ■ T + 1 : GOTO 


230 


ELSE T = UAL <A*> 




230 IF T <1 OR T >9999 OR T <> INT(T) THEN GOSUB 1000 : GOTO 20 




240 PRINT e P + 18, CHR*<30>; TAB(51) USING "****"; T 




30 A$ = " : P = 384 




310 PRINT e Pf "AMOUNT"? : INPUT A$ I 




320 IF A$ = "N" THEN 340 ELSE M ■ VAL(A$) 




330 IF M >■ 1E6 OR (M - AND A$ O "0") THEN GOSUB 1000 : GOTO 


300 


340 PRINT Q P + 6f CHR*(30)t TABC44) USING "$*#* f##* ♦##-" t M 




400 A* = " " J P = 512 




410 PRINT (? Pf "PAYEE NUMBER"; I INPUT A* 




420 IF A$ ■ "N" THEN 440 ELSE N = VAL(A$> 




430 IF N < 1 OR N > 99 OR N <> INT(N) THEN GOSUB 1000 : GOTO 40 


ELSE 


IF P$(N> - "" THEN GOSUB 1000 : GOTO 400 




440 PRINT P + 5f CHR*<30>f " NAME"; TAB (55 - LEN<P$<N>>> P*<N> 




500 A* = " " : P ■ 640 




510 PRINT Pf "ACCOUNT NUMBER"; : INPUT A$ 




520 IF A* = "N" THEN 540 ELSE A ■ VAL<A*> 




530 IF A <1 OR A > 99 OR A <> INT (A) THEN GOSUB 100 : GOTO 50 


ELSE IF 


A*(A) = "" THEN GOSUB 1000 : GOTO 500 




540 PRINT e P + 7f CHR*<30>; " NAME"; TAB (55 - LEN<A*(A>>> A* (A) 




590 PRINT 




600 INPUT "CORRECTIONS (Y OR N>"; A* 




610 IF A*="Y" THEN 100 




620 IF A* <> "N" THEN GOSUB 10 00 t GOTO 60 




630 ' ' ' ' PROCESSING STEPS FOR EACH TRANSACTION 




640 GOTO 100 : ,,,, ENTER NEXT TRANSACTION 




1000 PRINT Pf CHR$<30>; "ERROR — PLEASE REENTER"; 




1010 FOR I = 1 TO 50 




1020 NEXT 




1030 PRINT Pf CHR*<30> 




1100 RETURN 






WHAT IF 

we cut taxes 7%, 
up the prime rate 
2% double defense 
spending, while 
eliminating Saturday 
mail delivery? 

T/MAKER helps me 
juggle the imponderables 
fast and gives me a national 
overview on my CRTscreen.(Yukl) 

T/MAKER can integrate numerical and 
text data, making analysis easy and 
then print out a document in hard copy 
for the clods on Capitol Hill. 

T/MAKER is a wonderful tool for data 
analysis. It is easy to set up calculations 
for rows and columns of tabular data, 
automatically perform the 
computations, review the results and 
then modify some of the data to see the 
impact on the over all results. Several 
days of manual work can be 
accomplished in minutes. 

T/MAKER is a full screen editor for word 
processing which handles text up to 255 
characters wide. It includes features like 
text formatting and justification, text 
buffer for block moves and repeated 
inserts, global search and replace and 
commands for printing your letters, 
reports and documents. 

T/MAKER can perform an unlimited 
number of analysis and reporting tasks 
which integrate numerical and text 
processing. For example: 

• Financial Statements • Balance Sheets 

• Statistics • Growth & Projections • 
Profitability Reports • Revenues & 
Expenditures • Portfolio Analysis* Price 
Lists • Rate Structures • Inventory 
Valuation and much, much more. 

T/MAKER requires a 48K CP/M system, 
a total of 240K bytes of disk storage, 
CBASIC-2, and a CRT computer 
terminal with cursor addressing and 
clear screen. 

T/MAKER system is $275.00 complete 
with documentation and quick- 
reference card. 
Documentation alone is $25.00. 



LIFEBOAT 
ASSOCIATES 

1651 Third Ave. NY, NY 10028 

(212) 860-0300 
International Telex 220501 

T/MAKER is a trademark 
of P. Roizen 
CP/M is a trademark 
of Digital Research 




NOVEMBER 1980 



101 



CIRCLE 217 ON READER SERVICE CARD 



Is Your Apple Hung Up by a String? 



Bombproof Data Entry 



Here are two routines for your Apple 
II that provide a reasonable solution for 
many of the errors that crop up when 
programs request string input from users. 

These routines allow all alphanumeric 
characters to be typed in, including 
commas (no more '7EXTRA IGNORED')! 
Characters such as 'control C* are filtered 
out. Each word or string entry has a fixed 
maximum length which is used to prompt 
the operator. This fixed length is handy for 
formatting files, tables, etc. The strings 
can, if need be, be converted to numbers 
after entry. Both routines were written in 
Applesoft Basic. 

The first routine inputs data in a 
conventional echoing mode, with the 
cursor moving rightword. The second 

The second offers an 
unusual and attractive 
leftward motion of the 
input string, with a fixed 
cursor. 



offers an unusual and attractive leftward 
motion of the input string, with a fixed 
cursor. Each of these can be used as 
subroutines, to act as very effective filters 
and error traps for your user-oriented 
programs. 

Two important variables are: 
L — Maximum length of string to be 

input. 
B$ — Where the entered data will reside 

at the end of the routine. 

Forward-Stepping Input (Program 1) 

The most important lines of the 

program are: 

200 — Display prompting. Also depends 
on lines 180, 190, 210, 220 and 330. 
HTA B values are dependent on the 
length of the prompt line. In this 
case line 150 or "LAST NAME:" 
which is ten characters long and 
requires a minimum HTAB of 1 1 
(or 10+ I where I is greater than 0). 



Greg Kielian 




ASCII CHARACTER 


CODES (FROTl THE APPLESOFT II 


BASIC PROGRAMING MANUAL) 




DEC 


= ASCII 


DECiriAL CODE 














HEX 


= ASCII 


HEXADECIMAL 


CODE 












CHAR 


= ASCII 


CHARACTEF 


1 NAI1E 












N/A 


= NOT ACCESSIBLE 


DIRECTLY FR0P1 


THE 


APPLE 


II KEYBOARD 


DEC 


HEX 


CHAR I 


i/HAT TO TYPE 




DEC 


HEX 


CHAR 


WHAT TO TYPE 





00 


NULL 


CTRL a 






48 


30 







1 


01 


S0H 


CTRL A 






49 


31 


1 




2 


02 


STX 


CTRL B 






50 


32 


2 




3 


03 


ETX 


CTRL C 






51 


33 


3 




4 


04 


ET 


CTRL D 






52 


34 


4 




5 


05 


ENQ 


CTRL E 






53 


35 


5 




6 


06 


ACK 


CTRL F 






54 


36 


6 




7 


07 


BEL 


CTRL G 






55 


37 


7 




8 


08 


BS 


CTRL H 


OR 


*- 


56 


38 


8 


8 


9 


09 


HT 


CTRL I 






57 


39 


9 


9 


10 


0A 


LF 


CTRL 3 






58 


3A 


• 
• 


: 


11 


08 


\1T 


CTRL K 






59 


3B 


• 
9 


• 

9 


12 


0C 


FF 


CTRL L 






60 


3C 


< 


< 


13 


0D 


CR 


CTRL n 


OR 


RETURN 


61 


3D 


■ 




14 


0E 


SO 


CTRL N 






62 


3E 


> 


> 


15 


0F 


SI 


CTRL 






63 


3F 


9 

• 


7 


16 


10 


DLE 


CTRL P 






64 


40 


t 


a 


17 


11 


DC1 


CTRL Q 






65 


41 


A 


A 


18 


12 


DC 2 


CTRL R 






66 


42 


B 


B 


19 


13 


DC 3 


CTRL S 






67 


43 


C 


C 


20 


14 


DC4 


CTRL T 






68 


44 


D 


D 


21 


15 


NAK 


CTRL U 


OR 


- 


69 


45 


E 


E 


22 


16 


SYN 


CTRL V 






70 


46 


F 


F 


23 


17 


ETB 


CTRL U 






71 


47 


G 


G 


24 


18 


CAN 


CTRL X 






72 


48 


H 


H 


25 


19 


EH 


CTRL Y 






73 


49 


I 


I 


26 


1A 


SUB 


CTRL Z 






74 


4A 


3 


3 


27 


18 


ESCAPE 


ESC 






75 


46 


K 


K 


28 


1C 


FS 


N/A 






76 


4C 


L 


L 


29 


10 


GS 


CTRL SHIF1 


-n 


77 


4D 


n 


(1 


30 


1E 


RS 


CTRL T 






78 


4E 


N 


N 


31 


1F 


US 


N/A 






79 


4F 








32 


20 


SPACE 


SPACE 






80 


50 


p 


P 


33 


21 


! 


I 






81 


51 


Q 


Q 


34 


22 


n 


N 






B2 


52 


R 


R 


35 


23 


# 


# 






83 


53 


.S 


S 


36 


24 


1 


$ 






84 


54 


T 


T 


37 


25 


% 


% 






85 


55 


U 


U 


38 


26 


ft 


ft 






86 


56 


V 


V 


39 


27 


i 


I 






87 


57 


u 


H 


40 


28 


( 


( 






88 


58 


X 


X 


41 


29 


) 


) 






89 


59 


Y 


Y 


42 


2A 


* 


* 






90 


5A 


z 


Z 


43 


2B 


+ 


+ 






91 


5B 


[ 


N/A 


44 


2C 


i 


» 






92 


5C 


\ 


N/A 


45 


2D 










93 


50 


] 


] (SHIFT-PI) 


46 


2E 


• 


• 






94 


5E 


T 


T 


47 


2F 


/ 


/ 






95 


5F 


*~ 


N/A 



Greg Kielian, P.O. Box 1084, Longmont, CO 80501. 



Table 1 



102 



CREATIVE COMPUTING 



master charge 



"Computers ' r' us" 



; N ^rr^SX a consumer computers subsidiary 



(714) 698 8088 



UNBEATABLE MAIL ORDER DISCOUNTS 



TOLL FREE ORDER LINE' 

1-800-854-6654 









2S& 

m 




tipple computer 

Authorized Dealer 






DISK II DRIVE ONLY 426 

GRAPHICS TABLET «6 

SILENTYPE PRINTER w/int. card 515 

SSM AIO SERIAL/PARALLEL I/O kit 155 

SYMTEC LIGHT PEN card 216 

SVA 8 INCH DISK CONTROLLER card 

VIDEX VIDEOTERM ^/graphics ROM 

DC HAYES MICROMODEM II 319 

CORVUS 10 MEGABYTE HARD DISK 4396 

ALF MUSIC SYNTHISI2ER 236 

SPEECHLINK 2000 (94 word vocab) 215 

SUP R- MOD RF TV MODULATOR 30 

SUP R TERMINAL (90 col. card) 

MICROSOFT Z-90 SOFTCARD w/CP/M 

MICROWORKS DS-96 DIGISECTOR 

PARALLEL PRINTER Int. card 146 

COMMUNICATIONS CARD w/conn 196 

HI SPEED SERIAL Int. card 146 

PASCAL LANGUAGE SWEM 425 

CENTRONICS PRINTER Int. card 195 

APPLESOFT II FIRMWARE card 149 

INTEGER BASIC FIRMWARO card 149 

APPLE CLOCK/CALENDAR card 225 

SUPERTALKER SD200 SPEECH SYNTH 245 

ROMPLUS + (w/kybrd Altar) 196 

ROMWRITER •ysttm 156 

INTROUX 10 BSR SYSTEM 246 

MUSIC SYSTEM (19 voicas/starao) 495 

AID ♦ D/A CONVERTER 19 CHANNELS 319 

EXPANSION CHASSIS (9 slots) 




APPLE II PLUS 

OR APPLI II STANDARD 

16K FOR ONLY 



FORTRAN for language systam 196 

DOS 3.3 49 

THE CONTROLLER Gan. Bus 519 

THE CASHIER Retail Mgmt fr Inv 199 

APPLEWRITER Word Processor 96 

APPLEPOST Mailing List systam 46 

APPLEPLOT Graph & Plot systam 90 

VI SI CALC by Personal Software 120 

CCA DATA MANAGEMENT Deta Base 96 

APPLEBUG ASSEMBLER/DISSASSEMBLER. ... 76 
APPLE DOS TOOLKIT 96 






mm 



TV 



LEEDEX VIDEO 100 

SANYO 9" B4W 

SANYO 15" B4W 

PANACOLOAR 10" COLOR . . 
ZENITH/HEATH 13" COLOR.. 

NEC 12" HIRES COLOR 

NEC 12" LO RES COLOR 

NEC 12" GREEN PHOSPHER. 



129 
166 
246 
329 
399 
975 





239 



48K $ 1049 



W/Controller $ 485 



ANADEX DP-9000 775 

ANADEX DP 9600 1360 

CENTRONICS 737 

PAPER TIGER IDS440 w/gr 

TRENDCOM 200 519 

EPSON TX 90 w/grephics 729 

EPSON MX 90 132 col 920 

NEC SPINWRITER 




m 




WE ALSO CARRY 
THESE FINE PRODUCTS 



PMC-80 



m* ATARI 





ORDERING INFORMATION: Phone Orders invited using VISA, MASTERCARD, AMERICAN EXPRESS, or bank wire trsnsfers. VISA 4 MC credit csrd service chsrge of 2%, AE credit 
card service charge of 5%. Mail orders mey send chsrge csrd number (include expiration date), cashier's check, money order or personal check (allow 10 business dsys to clear.) 
Pleaae include a telephone number with ail orders. Foreign orders (excluding Military PO's) sdd 10% for shipping snd all funds must be in US dotlsrs. Shipping, hsndling snd In- 
surance In U.S. add 3%. California residents sdd 6% ssles tsx. Our low margins prohibit us to send COD or on account All equipment subject to price chsnge snd availability 
Equipment is new and complete with manufacturer warranty. We ship most orders within 2 days. Order desk hours sre Monday thru Saturday 9-5 PST. Send for FREE 1991 Catalog 
WE ARE A MEMBER OF THE BETTER BUSINESS BUREAU AND THE CHAMBER OF COMMERCE RETAIL STORE PRICES MAY DIFFER FROM MAIL ORDER PRICES. 

PLEASE SEND ORDERS TO: CONSUMER COMPUTERS MAIL ORDER CRU Division 631 4 PARKWAY DRIVE, GROSSMONT SHOPPING CENTER NORTH, LA MESA. CALIFORNIA. 92041 






CIRCLE 145 ON READER SERVICE CARD 



Want to 

REALLY UNDERSTAND 

The BASIC Language? 

From Che author of the highly acclaimed TRS-80 Users/ 
Learners Manual comes the book you've been asking for! The 
BASIC Handbook is THE definitive reference and 'idea" book, 
explaining in detail the BASIC language as used in over 50 
favorite micros, minis and mainframes. 

It's not a dictionary, and not a textbook, but a virtual ENCYCLOPEDIA of the 
BASIC language. In it is everything you need to know about the most 
important BASIC statements, functions, operators and commands, explained 
in a way that you can put them right to work. 

This HANDBOOK is written to be used! 

With the BASIC Handbook you can finally make those programs found in 
magazines run on your computer - or know the reason why they can't. 

If there is an alternate way to write a program using other BASIC words, the 
Handbook shows you how. If there is a function needed but your machine 
doesn t have it, the Handbook gives you a subroutine that accomplishes the 
same thing. About the only thing it won't help you with is an additional 16K of 
memory. 

Is TRS-80 Level II covered - YES! 
Is PET covered - YES! 
Is Apple covered - YES! 
Sorcerer, Altair, Imsai, Etc. 
. . . and over 50 more! 



c^ w*> N .<* 



xS**.*^ 



360 pages 
Soft Cover 



.As' 






> v v 



sr>v 



& 



** 



30-Day money back 
Guarantee 






j£* 






N<y 



<fy 



ft Aft 



COMPUSOFT - PUBLISHING 

A Division of CompuSoft, Inc 

8643 Navajo Road 

San Diego. California 921 19 






#1* 

e£,\ N 



>-«& 



ON^V 






^ 



<F*f 



1> s 



V 



4/ 



i understand my handtx^k will be shipped promptly and there 
is a 30-day money back guaiti^tee 

My Computer is a 



ICIRCLE 250ON READER SERVICE CARDl 



NOVEMBER 1980 



103 



Entry, cont'd... 



230 — GETs character as it's typed. 

240 — Checks character to see if it's a 
carriage return. If it is, control 
passes to line 370 and the routine is 
finished. 

250 — Checks character to see if it's a 
back arrow. If it is, lines 260 and 
290 remove the last character 
entered. 

300 — If the character has passed the first 
two tests, the number of characters 
entered is checked. If it's equal to 
the maximum number allowed (L), 
control is sent back to line 2 1 for a 
carriage return or back arrow. 

310 — If the character is illegal and has an 
ASCII value less than 32 (refer to 
Table 1), control is sent back to 
line 180 and another character is 
input. 

320 — At this point the character has 
finally passed through the entire 
filter and is concatenated onto 
4 B$\ 

340 — The character count is incre- 
mented and control is sent to fetch 
another character. 

380 — 'B$' is trimmed to the specified 
length. The program (or sub- 
routine) could be ended at this 
point, with the desired data in 4 B$\ 



100 


H0HE 




120 


S| = » 


130 


L = 10 


140 


VTA8 10 


150 


PRINT "LAST NAME:"; 


160 


PRINT MIDI (n|,1,L) 


170 


I ■ 1 


180 


VTAB 10 


190 


HTAB (10 + I) 


200 


PRINT "-" 


210 


V/TAB 10 


220 


HTAB (10 + I) 


230 


GET X| 


240 


IF X| = CHR| (13) THEN 370 


250 


IF X| < > CHR| (8) THEN 300 


260 


IF I = 1 THEN 180 


270 


B| = MIDI (B|,1, LEN (B|) - 1) 


280 


1 = 1-1 


290 


GOTO 180 


300 


IF I = L + 1 THEN 210 


310 


IF ASC (X|) < 32 THEN 180 


320 


B| = B| + X| 


330 


PRINT X| 


340 


1=1 + 1 


350 


IF I = L + 1 THEN 210 


360 


GOTO 180 


370 


GALL - 868 


380 


B* = B| + S| 


390 


B| = PIIDI (B|,1,L) 


400 


V/TAB 15 


410 


HTAB 1 


420 


PRINT B| 


430 


END 



100 


HOME 










ma Mt - " 




■ 






120 


S| = ■ 




M 






130 


L = 10 










140 


B| = MIDI 


(M|,1,L) 








150 


VTAB 10 










160 


PRINT "LAST NANE:" 


• 
1 






170 


I = 1 










180 


VTAB 10 










190 


HTAB 11 










200 


PRINT HIDI (B|, LEN (B|) - L + 


If LEN (B|)) 


210 


VTAB 10 










220 


HTAB (11 


♦ L) 








230 


GET X| 










240 


IF X| = 


CHR| (13) 


THEN 350 






250 


IF X| < 


> CHR| ( 


8) THEN 300 






260 


IF I = 1 


THEN 180 








270 


B| = MIDI 


(B|,1, LEN 






280 


1 = 1-1 










290 


GOTO 180 










300 


IF I = L 


+ 1 THEN 


180 






310 


IF ASC ( 


X|) < 32 


THEN 180 






320 


B| « B| 4 


x$ 








330 


1=1+1 










340 


GOTO 180 










350 


B| = MIDI 


(B|, LEN 


(B|) -1+2, 


LEN 


(Bl)) 


360 


B| = MIDI 


(S|,1,L 


- LEN (B|)) + 


B| 




370 


VTAB 15 










380 


HTAB 1 










390 


PRINT B| 










400 


END 











Routine 2. Backward-Stepping String. 



Routine I. Forward-Stepping Cursor. 



Back-Sliding Input (Program 2) 

This program operates in much the 
same way as the first, with the following 
differences: 
140 — *B$* is initialized with dashes 

instead of being blank or empty. 
200 — Display prompting that resembles 

backward scrolling. This format 

also depends on lines 180, 190,210 

and 220. Again HTAB values are 

dependent on line 160 or "LAST 

NAME:" which is ten characters 

long and requires an HTAB of 1 1. 

Examples 

Using Routine 1, and entering the 
name "JOHNSON," gives a display 
corresponding to the following: 
(Note: a indicates cursor position) 

Step Display 

1 LAST NAME: 

A 

2 LAST NAME: J z 

3 LAST NAME: JO K 

4 LAST NAME: JOH 

A 

5 LAST NAME: JOHS Note that a mistake was made. 

A 

6 LAST NAME: JOH Back arrow was typed. 

7 LAST NAME: JOHN t Mistake was corrected. 

A 

8 LAST NAME: JOHNS r — 

A 

9 LAST NAME: JOHNSO r— 

A 

10 LAST NAME: JOHNSON ™ 



At step ten a RETURN was typed and 
a 'B$' contains "JOHNSON . " Notice 
the blanks in the last three character 
positions. 

Using Routine 2, and entering the 
name "STITTS WORTH," results in the 
following display: (Note: Abdicates cursor 
position) 



A 

■s. 



-ST. 



-STI 



-STII 
-STI 



Back arrow was typed. 
-STIT. Mistake was corrected. 



-STITT. 



Step Display 

1 LAST NAME 

2 LAST NAME 

3 LAST NAME 

4 LAST NAME 

5 LAST NAME 

6 LAST NAME 

7 LAST NAME 

8 LAST NAME 

9 LAST NAME 

10 LAST NAME 

11 LAST NAME 

12 LAST NAME 

13 LAST NAME. >,.«, «o„w.x. A 

At step 13 the only characters 
recognized are carriage return or back 
arrow. Since the word didn't fit, it could be 
modified by retyping it before it's actually 
accepted by the machine. If a RETURN 
had been typed at step nine, 4 B$' would 
contain " STITTS. " Notice the blanks in 
the first four character positions. □ 



— STITTS A 
— STITTSW, 
-STITTSWO 



A 



-STITTSWOR 
STITTSWORT 



104 



CREATIVE COMPUTING 



TRS-80 JOYSTICK INTERFACE* 

(COMPLETE WITH TWO PROGRAMS, 
POWER SUPPLY & INSTRUCTIONS) 




PLUGS DIRECTLY INTO TRS-80 
EXPANSION INTERFACE 

• NO MODIFICATION REQUIRED 

• ALLOWS YOU TO CONNECT ONE 
FAIRCHILD" OR TWO ATARI™ JOYSTICKS 

$65 (PLUS $3.50 SHIPPING) 

Joysticks - FAIRCHILD™ OR ATARI™ - $15 EACH 
Many other Creative Software products are available for 
the PET and TRS-80. If your local dealer doesn't carry 
Creative Software products or program information, write 
directly to the address below. 

Creative Software 

(415) 949-1121 
P. O. BOX 4030, MOUNTAIN VIEW, CA 94040 

''REQUIRES 16K LEVEL II: JOYSTICKS NOT INCLUDED 



« » 



SOFTWARE 

for 

TRS-80 MODEL I & II 

• General Ledger, C.P.A. 

• Balance-Forward Accounts Receivable 

Open-Item Accounts Receivable 

• Contractor Job Costing 

• Accounts Payable 

• Payroll-Union-Piece-Farm-Restaurant 

• Cash Flow Statements 

$240.00 each 

Quality business software written especially for 

the Radio Shack computers. 

These are not Osborne programs. 

Submit blank diskette for sample report printouts. 

G ojApyi^ 







°£s7gn^ g * 



P.O. Box 735 

Yakima, WA 98907 

(509) 575-0320 



CIRCLE 150 ON READER SERVICE CARD 



PET TWO-WAY RS-23 

and PARALLEL 
OUTPUT INTERFACE 




SADI - The microprocessor based serial and parallel 
interface for the Commodore PET. SADI allows you to 
connect your PET to parallel and serial printers, 
CRT's, modems, acoustic couplers, hard copy termi- 
nals and other computers. The serial and parallel 
ports are independent allowing the PET to communi- 
cate with both peripheral devices simultaneously or 
one at a time. In addition, the RS-232 device can com- 
municate with the parallel device. 



Special Features for the PET interface include: 

Conversion to true ASCII both in and out 

Cursor controls and function characters 

specially printed 

Transfers programs between PETs 

over the phone line using a modem. 

Selectable reversal of upper and lower case 

PET IEEE connector for daisy chaining 

Addressable - works with other devices 
Special Features for the serial interface include: 

Baud rate selectable from 75 to 9600 

Half or full duplex 

32 character buffer 

X-ON, X-OFF automatically sent 

Selectable carriage return delay 
Special Features for the parallel interface include: 

Data strobe - either polarity 

Device ready - either polarity 

Centronics compatible 
Complete with power supply, PET IEEE cable, RS-232 
connector, parallel port connector and case. Assembled 

and tested. 

SADIa(110VAC)$295 

SADIe (230VAC) $325 

Ooar *nil or contact your >•■•< curwfjMtor «*•»•. 

CONNECTICUT microCOMPUTER, Inc. 

1 50 POCONO ROAD 
BROOKFIELD, CONNECTICUT 0*904 

TEL (203) 775 9659 TWX: 710456 0052 

VISA AMO M/C ACCtrriD - SIHO ACCOUHT HUMW.WIWTIOU QATl AMO SiSN 0«0«. 

aoo $» w onow '<* 9H\imm * hawum - wcisn orocm aoo io% fon AM fostaoc. 



NOVEMBER 1980 



105 



Loosening Fbcked Dosic 



Jackiw 



A while ago, one of the popular 
computing magazines published a pro- 
gram which PACKED a program to- 
gether. This would save memory and 
execution time. With a small program, one 
that had been compacted, the author 
thought he had a better chance of selling 
the program to some magazine. 



Although it's true that "P.XOS" is much 
shorter (and therefore less space con- 
suming) than "PRINT X0$", you must 
admit that the latter registers in the mind 
much more clearly than the first. So many 



times have I heard the person whimpering 
over the latest Creative, "Is that a 
semicolon or a colon?" 

UNPACKER, I feel, should be used 
on every program before hard-copy 



If you can't read it, it's not 
worth typing in. 

I enjoy this program, and use it 
frequently. However, on the occasions 
when I submit material to magazines, the 
PACKER program is not used. My 
personal experience and the comments 
from others have told me this fact is true: If 
you can't read it, it's not worth typing in. I 
have spent hours laboring over the 
cramped style of most programmers. 



10! WRITTEN BY NICK JACKIW 
20X=INT(RND*5)+i:iF X<1 THEJ* GOTO 20 
25INPUT "GUESS THE NUMBER ■ J AO : IF A0=X THEN 
301 'YOU GOT ITI'tfGOOD JOBI'tGOTO 20 
40END 



30 ELSE GOTO 25 



Figure 1 



00010 ! WRITTEN BY NICK JACKIW 
00020 X=INT(RND*5)+1 

\ IF X<1 THEN GOTO % 20 
00025 INPUT 'GUESS THE NUMBER" *A0 

\ IF A0»X THEN 30 ELSE GOTO 25 
00030 PRINT "YOU GOT IT! 1 

\ PRINT 'GOOD JOB! " 

\ GOTO 20 
00040 END 



Figure 2 



00010 PRINT "FILE NAME"? 

\ INPUT AO* 

00020 OPEN AO* FOR INPUT AS FILE *1X 

00030 PRINT 'OUT FILE" 5 

\ INPUT AO* 

00035 OPEN AO* FOR OUTPUT AS FILE #2% 

00037 ON ERROR GOTO 300 

00040 INPUT LINE*1Z*A0* 

\ IF RIGHT(A0*rLEN(A0*)-2Z)*CHR*(10X)+CHR*(13%)+CHR*<0Z) 
THEN X0Z=-1Z 

\ Al*»Al*+LEFT(A0*rLEN(A0*)-3%) 
\ GOTO 40 

00042 IF X0X—1X THEN XOZ=0% 
\ AOt*Al*+AO* 

00043 AO* = CVT*i ( AO* 1 1 6X ) 

00045 XOX*INSTR<lZrAO*»"f) 

\ IF XOX=0% THEN GOTO 100 

00046 AO«»LEFT<AOtrXOZ-l%)+ "PRINT "+RIGHT<AOt, X0X+1X) 
\ GOTO 45 

00100 XOX=INSTR( IX, AO*, • X • ) 

\ IF XOX=OX THEN GOTO 200 

00102 A0*=LEFT(A0*.X0X-1X>+CHR$<10X)+CHR*<13X)+CHR*<0X>+CHR*<?X>+ 
"\ " +RIGHT <AOt,XOX+ IX) 

\ GOTO 100 

00200 XO**"" 

\ FOR IX*1X TO LEN<AO*> 

00201 Z*=MID<A0*,IX,1X> 

\ IF INSTRdX, "0123456789", Z*> = OX THEN GOTO 205 
00*02 XO*=XO*+Z* 
00*03 NEXT IX 

00204 PRINT "COMMANDLESS STATMENT KILLED-'+AO* 
\ GOTO 40 

00205 IF LEN<X0*X5X THEN XO*««0"+XO* 
\ GOTO 205 

00206 A0**X0*+CHR*<9X>+" "+RIGHT( AO*, IX) 
00210 PRINT *2X,A0$$ 

\ GOTO 40 
00300 CLOSE #1X 
\ CLOSE *2X 

\ PRINT "UNPACKING COMPLETE." 
\ END 



Figure 3 



listings are used. Even when I take printout 
home overnight for pad & pencil de- 
bugging, I run UNPACKER. 

There are three listings with this 
article. The first shows a sample program. 
In it, the user guesses a number. Figure 2 
shows a readable, beautiful program with 
exactly the same logic! In fact, the program 
is the same, simply UNPACKED. Figure 3 
is simply a listing of the UNPACK 
program. 

Every system has its quirks. My 
program was meant to run on a PDP-1 1, 
with extensive file handling routines. 
However, it is not the program that this 
article is about. It is the idea. Try your 
hand at an UNPACKing program. If you 
don't have an operating system with file 
handling, then you can have the unpacked 
program put out straight to a line printer. 
You may expand infinitely on this 
program. (My 14K version even adds the 
LET verb.) 

Guidelines for making an UN- 
PACKer: 

(a) Get rid of all abbreviations. 

(b) Add at least three spaces (or a tab) 
between the line number and the rest of the 
line. 

(c) Make your results clear! □ 



Nick Jackiw, 5806 Murrayhill Place. Pittsburgh PA 
15217. 



106 



CREATIVE COMPUTING 




JAMES TO LLE y 



NFL-PIX for 1980-1981 SEASON 

•"♦♦A*************************** 

Predict this Season's Games! 

This program will maintain weekly 
team schedules, keep track of scores 
of games played, list current Division 
win-loss standings and - predict the probable outcome of games! It establishes 
a rolling average of strengths of all teams based on past performance. During the 
last season its prediction was 6% better than the Greek Prognosticator! 

For 16K Level II TRS-80 or Single Disk DOS Just $19.95 

Please specify tape or disk!! Documentation supplied with either disk or tape. 

80 U.S. Software 

3838 South Warner Street 

Tacoma, WA 98409 

(206) 475-2219 

Check, Money Order, Visa/Mastercard 

TRS-80 is a Trademark of the Tandy Corporation 
80-US Software & 80-US Journal are Divisions of 80-Northwest Publishing Co. 



CIRCLE 1890N READER SERVICE CARD 



vr last: 



STOCK 
TRACKER,. 

IN f BASK LNDERCP/M* 




.SELL 



A POWERFUL. VOLUME BASED ANALYSIS PROGRAM TO COMPUTE 
fcjr. SELL AND MOID RECOMMENDATIONS ON STOCKS. OPTIONS AND 
COMMODITIES WITH FULLY EDITABLE DISK DATA FILES IN CP'M VER- 
SION PROGRAMMED BY MIC ROAP 

AMLAtiE ». THESE DISK DRIVE FORMATS' 
8" »M SOfT SECTOR. SINGLE DENSITY 
f DVNABYTE SMGIE OR DOUBLE DENSITY 

jrNABYTE SOfT SECTOR 

NORTH STAR DOUBLE DENSITY 

•AiCROPOtlS MODI 

IttQUIRES MIN Vjr CP'M I 4 OR HIGHER OPERATING SYSTEM 
CBAStC >.0iORHK>HER 
vtORE DISK DRIVES 
■ DOC OR LARGERCURSOR ADDRESSABLE TERMINAL 

ALSO AVAR Altf APPLE K* OR APPLE K PIUS* VERSION IMIN 32K RAM 
I OR MORE DISKS AND APPLESOFT CARD OR 

lANGUXGE SYSIFM 
IKS HO* MOO I VERSION MM WK RAM AND 2 OR 
MORE DISKS 

SIMM CPw VERSION COMPUTE SPECFY DISK DRIVE FORMAT 
<u APf>l£ OR TRS-8C VERSIONS COMPLETE SPECIFY WHICH 
ANY MANUAL AlONE, SPEC* Y VERSION 

*SK KJK THE MIUt.V f 

FOR MORE INFORMATION OK TO ORDER SEE YOUR DEALER OR- 



H ■• 3 » 



POST OFFICE BOX 2354* 
PLEASANT MILL. CALIFORNIA (4323 

Illapnont «I5 837 1030 



T&tfX.**;, CgW&NY VISA » MASTERCARD 

ASA AaOUT OUR NEW MARKM ! KV KIHjm PROGRAM! 

t-xrigii .Rumen HC CameJm Int anfl RcAo Sf»x> ■K(iKt,—t, 



MICROSTAT 
NOW AVAILABLE FOR CP/M 

MICROSTAT, the most powerful statistics package available 
for microcomputers, is completely file-oriented with a power- 
ful Data Management Subsystem (DMS) that allows you to 
edit delete, augment, sort rank-order, lag and transform (11 
transformations, including linear, exponential and log) existing 
data into new data. After a file is created with DMS. Microstat 
provides statistical analysis in the following general areas: 
Oescriptive Statistics (mean, sample, and population S.D., 
variance, etc.). Frequency Distributions (grouped or individ- 
ual), Hypothesis Testing (mean or proportion). Correlation and 
Regression Analysis (with support statistics), Non-parametric 
Tests (Kolmogorov-Smirnov, Wilcoxon. etc.). Probability Dis- 
tributions (8 of them), Crosstabs and Chi-square, AN0VA (one 
and two way). Factorials, Combinations and Permutations, plus 
other unique and useful features. 

MICROSTAT requires 48K. Microsoft MBasic with CP/M and 
it tent on a single-density 8" Disk. It is also available on 5" 
diskettes for North Star DOS and Basic (32K and two drives 
recommended), specify which when ordering. The price for 
Microstat is J250 00 The user's manual is * 15.00 and 
includes sample data and printouts. We have ether business 
and educational software, call or write: 



=n ECOSOFT 

P.O. Box 68602 

Indianapolis. IN 46268 

1317) 283-8883 

CP/M is a registered trade mark of Digital Research 



[master charge 1 



CIRCLE !« ON READER SERVICE CARD 



107 



CIRCLE 181 ON READER SERVICE CAF 



Shortest 
Paths 

M. L. Shore 



The area of mathematics known as 
Operations Research is probably best 
known to the layman for such popular 
applications as PERT (which is based on 
critical path scheduling). However, a vast 
number of algorithms have been developed 
under the umbrella of Operations Re- 
search which can be of value to both 
professional and amateur programmers. 
One such algorithm is described by 
Djikstra in his paper entitled "A Note on 
Two Problems in Connection with Graphs." 

There are many uses for 
the shortest path algor- 
ithm, limited only by our 
ability to recognize when 
a problem may be con- 
verted into a shortest 
path in a graph represen- 
tation. 

published in the Sumerische Mathcnumk. 
1 959. Vol 1 , pages 269-27 1 . This algorithm 
efficiently finds the shortest path from one 
point in a graph to another point in that 
graph Now >ou need not be put off by 
terminology such as "shortest path" and 
"graph" . . they are merely the official 
titles for quite simple concepts Before we 
describe the algorithm as such, let us lust 
define the necessary terms used later on in 
this article. 

Definitions 

We CUI define a graph, somewhat 

.i set ol points connected b . 
ol lines \\ e can see this diagramalically in 
FigtU connected with each of the 

repiesent 

g . between twocitu l 

il a pipe connecting two waterllowsl 

and so on We show these I >l the 

line to which thc> relate, as in ligurc 2 



M ! 

ilaod. 



1**4 




t'igure 1 . A g 



. ' \ < . • - 




Howeser. they can be shown m ■ different 
way .is a table ol COStSU ia fable I 
latter representation is more convenient 
for the larger graphs, and tor those graphs 
in which the cost ol the in-.. ;; i to 

point i is not : - '.hat of the line 

from point j to point i tie. the graph 
ssmmetrical. and we call it a dr.. 
graph). In this table, each Ml 
column i. sa\ denoted c ) lepresents the 
cost associated with the 
point i to point i lhus the undin 

graph, wh. 

of the duci' 

UMe I 1 he COM uhk 




Practical I n 

When <tes« - ... 

. . . . 

W« v.\c 

'rackets 

■ 

S3 . . . . 

i 

| . 

. points. N 

• ■ 



.. ■ . s 

k( 



'CW 



;<!VaCO«*HJT1N0 




THE 




ACCESSING THE TRS-80* ROM 



If you ever do 
Assembly 
language 
programming, 
or you just want 
to know more 
about your 
TRS-80 ROM, 
"THEB00K" 
is for you. 



JWTTTl 




Volume I will give you access to over fifty ma- 
chine language subroutines in the Radio Shack 
Level II BASIC. It includes information on the nu- 
meric data formats and a commented listing of the 
ROM routines. 

"THE B0Q5K, Volume I", encompasses all arith- 
metic functions and mathematical operations. 
There are separate routines for integers, single 
precision, and double precision numbers and the 
data format for each of these number types is 
explained. The routines that perform ASCII to bin- 
ary and binary to ASCII conversion are identified 
and explained to provide you a means of data I/O. 

A fully commented listing provides the details on 
the step-by-step execution of these ROM rou- 
tines. Although a complete disassembly is not 
provided in order to avoid copyright infringement, 
you can obtain a complete disassembly using the 
disassembler program listed in "THE B00K." 
Volume I also includes a complete, detailed mem- 
ory map of the entire machine and a symbol table 
noting over 500 addresses. 

"THE B00K" will save you hour upon hour of 
assembler program development time. Don't start 
programming without it. 

Order your copy of "THE B00K", today! 



DEALER INQUIRIES INVITED 



Insiders Software Consultants, Inc. 
P.O. Box 2441, Dept. S 1 
Springfield, VA 221 52 

□ Please send me Volume I of THE B00K 
at $1 4.95 plus $1 .50 for postage. 



*TRS-80 is a trademark of 
Tandy Corp. 



NAME; 



ADDRESS: 



CITY, STATE 



& ZIP CODE: 



□ Check payable to Insiders Software Consultants, Inc. 

□ MASTER CHARGE MC Bank Code: 

J VISA Exp. Date: Card Number: 



Signature: 



CIRCLE 205 ON READER SERVICE CARD 



The ATARI 8 Tutorial 

COMPUTER 

Calligraphy? 

Well, not really! But with the FONTEDIT program in IRIDIS #2 you can design 
your own character sets for the ATARI. For example, you can create a Russian 
alphabet, or APL characters, or even special-purpose graphics symbols. These 
special fonts can be saved on disk or tape for later use by your own Basic 
programs. FONTEDIT is a friendly, easy-to-use program: just grab a joystick and 
start designing. With our KNOTWORK program, you can design patterns of Celtic 
interlace, (a technique used by 7th century Irish monks to illuminate manuscripts). 
After you have produced a pretty pattern on the screen of your ATARI, you can 
save it on disk or tape. 

Best of all, IRIDIS #2 comes with a 48-page User's Guide, which gives clear 
instructions on how to use the programs. The guide also provides detailed, line-by- 
line descriptions of how the p/ograms work. IRIDIS programs are written to be 
studied as well as used.) Hacker's Delight presents useful explanations of many of 
the important PEEK and POKE locations in your ATARI. 

The IRIDIS #2 tutorial for the ATARI is available now from your local ATARI 
dealer. You get the User's Guide and a cassette (or disk) with FONTEDIT, 
KNOTWORK, and a routine to allow your program to load a custom font. 
ATARI is a trademark of ATARI, Inc. 



To: The Code Works, Box 550. Goleta. CA 93017 

Please send me IRIDIS #2 for my ATARI immediately. 

□ $15.95 Cassette (needs 16K) □ $18.95 Disk (needs 24K) 



Name 



Address 



City/State/Zip , 

OviSA Card Number — 
□ MasterCharge Expires 



Phone: (805) 967-0905 



Programs for your ATARI* 
CIRCLE 209 ON READER SERVICE CARD 



What you' C 

is what 
you get ! 



C Compiler for CP/M 

New, and available now! An easily affordable compiler 
incorporating most of the features of the full C language. 

BD SOFTWARE 

System requirements: CP/M and at least 24K of RAM 

Variable Types: char, int, unsigned 

Composite Types: arrays, structures, unions 

Pointers: to variables, structures, unions and functions 

Features: is a structured language, all functions (Programs) 
recursive; more powerful expression operators than any 
other von Neumann type language; allows free-formatted 
source; close enough to UNIX**C to make conversions 
feasible. 

Speed: On 2 MHz 8080, the statement 
for (i = 1; i < 30000; i ++) x = 5; 
takes about 4 seconds to execute. 

Package contains: compiler, linker, library manager; standard 
function library; sample source files include games, a 
terminal emulator with disk I/O plus the source for 
many standard library functions; BDS C User's Guide; 
Book— The C Programming Language by Dennis Ritchie 
and Brian Kernighan of Bell Labs. Price: $145 

Recipient of the Computer Lib Seal of Approval «— . > * «— $25 

*CP/M is a trademark of Digital Research Corp 
>mark of Bell Laboratories 



'UNI 



Prices feflact dislrlbulion or t" tingls density dttUMn 
II ■ lormal il nqutlltd wh>ch raquirss additional Hitmut 



Lifeboat Associates 

1651 3rd Ave . New York. NY 10028 (212)"860-0300 Telex: 220501 



NOVEMBER 1980 



109 



Paths, cont'd. 



?FADY. 

'c* '"LP c ' c,T >'." r "" 1 " 
:0 PRINT ■;•;.;. ■.-. 
- ; g print " 3 H RTEST °ST H" PRINT 

25 PRINT " DIRECTIOHAI > " pc-jk;T 

10 FOR 1-1 T 2980 NEXT 

50 PRINT "T PRINT " STSTS" 

50 PRINT "THIS PROGRAM ILLUSTRATES TLJ E USE OF 

7 PRINT "THF SHORTEST PATM ALGORITHM A3 PER 

39 PRINT "DJIKSTRA <ti?59>." 

90 PRINT "thp HEED TO rT ra A SHORTEST PftT u " 

!9e PRINT "FROM ONE POINT TO ANOTHER V P GRAPH" 

110 PRINT "<0P METllORiO OCCURS IN fl VARIETY OP" 

'.29 PRINT "OPERATIONS RESEARCH APPLICATIONS" 

'.36 PRINT PRINT " T HE FOLLOWING PROGRAM MERELY" 

140 PRINT "PEC" JESTS INPUT OF A GRAPH, AND" 

!56 PRINT "PRODUCES THE SHORTEST PATH AS ft HRV" 

160 PRINT "OF DEMONSTRATING THE TECHNIQUE" 

'70 (JET ft* IF A*="" THEN J70 

"•00 PRINT "3"' PRINT 'PRINT 

210 INPUT "HOW CANY POINTS IN THE G D ftF~ 

220 REM 

230 REM *************♦*****♦*♦♦♦♦♦* 

240 REN * * 

250 REM * INPUT THE GRAPH * 

250 REM * * 

270 REM a************************** 

2S0 DIM D(H.K,i1(2,H) 

290 FOR 1=1 TO H 

300 FOR J*l TO N 

305 IF I»J THEN 3-40 

310 PRINT "IT PRINT PRINT 

32S PRINT "COST OF LINE" - I ; "TO", J, INPUT D' I J ' 

340 NEXT NEXT 

250 REM 

360 REM ******+*♦+*+**************** 




Figure i. A road map 



<>-<^ 




370 
230 
390 
400 

tie 

420 
510 
.520 
530 
540 
550 
560 
570 
530 
590 

600 

610 

62S 

530 

640 

656 

€60 

670 

588 

310 

320 

330 

340 

350 

940 

950 

960 

970 

930 

990 

1000 

!01S 

1029 

1030 

1040 

1058 

1060 

1070 
1080 
1100 

1110 

1200 

1210 

READY 



REM * 

REM * GET THE T'-.'O POINTS * 

REM * * 

REM **************************** 

PRINT ".T PRINT PRINT 

INPUT "ENTER THE TWO POINT NUMBERS" • XI X2 

REM 

REM ***************************** 

REM * * 

REM * NO'.! ENTER THE S.'R + 

REM * * 

REM ***************************** 

REM 

GOSUB 1008 

REM 

REM ***************************** 

REM * * 

REM * NOW DISPLAY THE RESULTS * 

REM * * 

REM ***************************** 

PRINT "3" PR T NT 

PRINT "THE SHORTEST PATH IS OF COST";fl(l ,X1> 

pptijt __ 

"PRINT "PRTHTTNES" PRIN T «-=========" PRINT 

I=X1 

PRINT l;fi<2-l> iv „ T . _,„„ 

IF A<2,I>OX2 THEN I-B<2, I>"GOTO 829 

PRINT 

REM **************************** 
REM * 

REM * THIS S/P CALCULATES * 

REM * SHORTEST PATH FOR XI -X2 * 
REM * * 

REM **************************** 

FOR 1=1 TO N A'-1.I>=D<I-X2) A<2,I>=X2 NEXT 

fl<2/X2)=-X2 

I1=X2 

MN=',000 

FOR 1=1 TO M 

TF A<">, 1X0 THEN 1030 

IF rj<I-Il>+fl<MlKfl«*I> THEN fi<l,I)=D<I,Ii: 

IF AC1-IKMN THEN I2=T ' KH=fl<l , I > 

NEXT 

11=12 A<2-Il>=-fl<2-n> 

1=- MOX3 THEN 1030 

FOR 1 = 1 TO N fl<2 I>=A3S<fK2. I)) 'NEXT 

RETURN 



+fl(l,Ilffl(2,!) = Il 



110 



figure 4, A graphical reproeoutioo "l tin road map. 

Although in this case wc have a small 
graph, and consequently a small number of 
possible routes to look at, consider the case 
where there are, say, 1 00 junctions and a 
subsequently large number of possible 
routes; could we then tell the quickest 
route by mere examination of the map by 
eye? I think not; certainly not easily. 



The Algorithm 

Now to the crux of the article . . . the 
algorithm. The formal definition of the 
algorithm by pseudocode can be generated 
with ease from the demonstration pro- 
gram, lines 1000 onward. Hence, here we 
present only an explanation of the 
algorithm. 

Initially, we give the to-point specified 
(say x2) the "permanent" value zero, and 
give all other points the "tentative" value of 
the direct distance from that point to point 
x2. Then, one by one, we compare each 
tentative point's associated distance with 
the sum of the distance from the last point 
to be set as permanent to x2, and the direct 
distance from this tentative point to the 
permanent point. The smaller of these two 
distances then becomes the tentative 
point's new associated distance. 

Next, determine the smallest asso- 
ciated distance for all points still tentative, 
and declare the point with that smallest 
distance to be permanent. Then go back to 
the previous stage, and compare the 
associated distances of all tentative points 
with the sum of the distance from the last 
point to be set as permanent . . • etc. 
The algorithm terminates when the 

CREATIVE COMPUTING 



QUALITY PROFESSIONAL & BUSINESS SOFTWARE 
FOR THE APPLE II AND APPLE PLUS COMPUTERS 



SAVE 



ON ADD-ON TDC OH 
PRODUCTS FOR I KO"OU 



LETTER MASTER - This is a lightning fast Word 
Processor which is si mple to use and operates like a character- 
oriented system It features a menu driven operating system 
which allows entry, storage, editing, draft printing, and final 
lustified printing Editing includes line corrections (add up to 
200 characters if you want), global search, string 
replacement, delete add. and merge Text floats as needed to 
make up lines of text Print justified, unjustified, or a mixture 
System prepares and prints form letters with its own 500 
name diskette full feature mailing list program Applesoft II 
Disc Item M-34, S139 95 Processor without mailing list and 
form letter. Item M-33. S69 95 

PROGRAMMER PLUS -A 16 lesson course in Applesoft 
II on two full disks or super-load tape which will teach you all 
you need to know to program in BASIC Lessons cover all 
string, math and logical operations necessary for personal, 
scientific or business applications Special units teach 
graphics and sound to add a little Apple Class' to your 
programs Applesoft II. Item 35. Tape. $24.95 Disc. $34 95. 

SCIENTIST - A powerful scientific data base and statistics 
program which will turn your Apple into a mathematical and 
graphics tool It will do simple statistics or such complicated 
functions as Chi- Square. Normal. Student-t. and Poisson 
With the Data Base element you can build your own analytical 
programs Applesoft II Disc. $89 95 



TO ORDER CALL TOLL FREE 24 HOURS 

800-854-0561 Ext 802 

In CA 800-432-7257 

OR WRITE FOR TECHNICAL ASSISTANCE TO 

MONUMENT COMPUTER SERVICE 

Village Data Center - P.O. Box 603 
Joshua Tree. California 92252 



CIRCLE 152 ON READER SERVICE CARD 



Being a deaf dancer 
is really something. 







* Piesideni s Committee on Empioymer : . • ■ ■ „ H ■ M - appea Washington C 20210 
Tl * School ot Visual Arts Put*c Advertising System 



The largest family 

of disk drives from 

the largest supplier, 

drives come 

complete with 

power supply and 

cabinet. 

MTI-40 Disk Drive. 35 & 40 track $369 

TF-1 Pertec FD200, 40 track, use both sides $389 

TF-3 Shugart SA400. 35 track, same as tandy $389 

TF-5 MPI B51, 40 track $379 

TF-70 Micropolis. 77 track with 195K of storage $639 

TDH-1 Dual sided drive. 35 track $499 




fvlaxi Disk 2: 10 Megabyte (fixed) 
Winchester Technology 



$5349 



NEW PRODUCTS 

16K Memory $86 

Modem $1 79 

Expansion Interface 32K $499 

AC Isolator $47.95 



PRINTERS 



DP800 Anadex, 80 column, 1 12cps $949 

LP779 Centronics 779 $1 099 

LP730 Centronics 730 ** 950 

LP700 Centronics 700 $1 395 

LP701 Centronics 701 $1 759 

LP702 Centronics 702 $1995 

SPW-1 Spinwriter-NEC $2525 



NEW! LINE PRINTER 



BASE 2 



Base 2 Printer 80. 132 col . graphics 
60 LPM with tractors . 



$599 



* DRIVES FOR ANY MICROCOMPUTER * 

Does not include power supply & cabinet 

MOD II DISK DRIVES NOW AVAILABLE 

Pertec FD200 $282 

Pertec FD250 (dual head) $399 

Shugart SA400 (unused) $286 

Shugart SAflOO $479 

MPI B52 $349 B51 $279 



SOFTWARE 

Disk Drive Motor Speed Test $19.95 

New DOS* with over 200 modifications and 

corrections to TRS-DOS $99 

New DOS' 40 track $110 

AJA Woid Processor $75 

AJA Business Program $250 

Pacet infinite Basic $49.95 

Disk Drive Alignment Program $109 

Radix Data Base Program $99.95 

c Pencil $150 



ALL PRICES CASH DISCOUNTED. FREIGHT FOB/FACTORY 



^ 



EA 



/VHCROCOVPuTER 

TECHNOLOGY 
INCORPORATED 




pparat, Inc. 



3304 W. MacArthur 

Santa Ana, CA 92704 

(714) 979-9923 



7310 E. Princeton Ave 

Denver. CO 80222 

(303) 758-7275 



YEMBER 1980 



111 



CIRCLE 151 ON READER SERVICE CARD 
See us at the west Coest Computer Film, Booth 11 109C 



Paths, cont'd... 

REftDV. 

26 REM ************************* 
4? REM * EXmPLE F * 0GR ™ • * 

I CLP:PR^******************** 

se dim B*<ieee> 

5® PR ™J; INPUT "STRING", ft* 

iye ts»ti 

118 FOR 1=1 TO 1000 
120 8*<I> = fi$ 
130 NEXT I 
140 TC=TI-TS 

la £&£ T " TIME TflKE ^ HflS»iTC 
lbtf STOP 

REflDV. 



REflDV. 

20 REM ************************* 

a« §cm ? EXfif1p l-E PROGRAM 2 * 
40 REM * * 

I CLR - ************************* 

80 DIM B$<1000> 
36 PRINT INPUT "STRING", fl* 
106 TS=TI 

110 FOR 1=1 TO 1000 
120 B*<I>=»fl* 
136 NEXTI 
140 TC=TI-TS 

150 PRINT "TIME TAKEN WflS",TC 
160 STOP 
REflDV. 



REflDV. 

10 REM ************************* 
20 REM * * 

30 REM * EXAMPLE PROGRAM 3 * 
40 REM * * 

50 REM ************************* 
60 CtR: PRINT "3" 

70 l=0.fi*="" 

80 DIM B*<1000:> 
90 PRINT: INPUT "STRING" ;fl* 
100 TS=TI 

110 FOR 1=1 TO 1000 
120 B*<I)=fi* 
130 NEXT I 
140 TC=TI-TS 

150 PRINT "TIME TAKEN WflS";TC 
160 STOP 
READV. 



Figure 5. The shortest path solution. 







number of 


time taken 


points 


(elapsed sees) 


5 


1 .0 


8 


2.3 


10 


3.5 


15 


7.3 


20 


12.2 


30 


26.2 


50 


68.9 




©-H3 



REflDV. 

10 REM ************************* 
20 REM * * 

30 REM * EXAMPLE PROGRAM 4 * 
40 REM * * 

50 REM ************************* 
60 CLR: PRINT "J 
78 l=0fl$="» 
80 DIM B*r.l000> 
90 PRINT: INPUT "STRING", fl$ 
100 TS=TI 

110 FOR 1=1 TO 1000 
120 B$U;=fl* 
136 NEXT 
140 TC=TI-TS 

150 PRINT "TIME TAKEN WflS":TC 
160 STOP 
RE AH V. 



REflDV. 

10 REM ************************* 
20 REM * * 

30 REM * EXAMPLE PROGRAM 5 * 
46 REM * * 

50 REM ************************* 
60 CLR: PRINT ".T 
70 l=0:fl*= u " 
30 DIM B*<1000> 
90 PRINT: INPUT "STRINfi";ft* 
100 TS=TI 

110 FOR 1=1 TO 1000:B*a>=fl*:NEXT 
140 TC=TI-TS 

150 PRINT "TIME TftKEN WflS";TC 
166 STOP 
REflDV. 



ho ,0 

numb.r of point 



from-point (say xl) has been «., 
permanent. Then the shortest p ath ^ * 
to x2 is of that cost associated with Z? 
x! (its associated distance). The act™ 
path itself can be determined by keen 
track of the points to which all poi ^ 
connect on their shortest path to the point 

The Implementation 

In the implementation as shown in the 
demonstration program, the program 
reads a directional graph. (Lines 290-340 
could be easily modified to input { 
nondirectional graph, and hence speed up 
graph input by a factor of two. I his, 
however, makes no difference to the 
algorithm.) The graph is stored in a nxn 
array D. where n is the size of (the number 
of points in) the graph, and the associated 

Consider the case where 
there are, say, 100 junc- 
tions and a subsequently 
large number of possible 
routes; could we then 
tell the quickest route by 
mere examination of the 
map by eye? I think not; 
certainly not easily. 



Table 2. Elapsed time in seconds on a PET 200 1. 



Figure 6. 
Time taken to solve problems on a Commodore PET. 

112 



distances for the permanent and tentative 
points are stored in the part array a(l,). 
The point to which the permanent/ tenta- 
tive point is connected on its shortest path 
to x2 is stored in the part array a(2,). The 
distinction between permanent and tenta- 
tive status is given by the sign of this latter 
part array, such that negative a(2,) entries 
for a point denote it as being permanent. 

Timings 

The time taken for the algorithm to 
process the graph obviously depends upon 
how soon point xl is declared permanent. 
However, we ran a number of problems 
through the demonstration program such 
that point xl was the last point to be 
declared permanent, and the results are 
shown in tabular form. Table 2, and 
graphical form, Figure 6. It can be seen 
from the timings, and calculated from the 
algorithm, that the time taken to solve a 
particular problem will be related to the 
number of points squared. 

Conclusions 

Thus we have an efficient algorithm 
for calculating shortest paths. The demon- 
stration program does not pretend to be 
the fastest implementation of the algor- 
ithm (you may be interested in seeing just 
how fast you can make the algorithm run 
on your computer), but it is a compromise 
between speed and readability. 

CREATIVE COMPUTING 



Figure 7. A wargaming situation. 




Figure 8. 



A graph representation of the wargaming lituation 




As for the uses of shortest path 
techniques, there are many. The technique 
is used to a great extent as part of a 
solution to other problems in optimiza- 
tion, but does form a solution in itself for 
problems like the quickest route. Another 
stand-alone use of the technique could be 
as follows. 

Consider the situation depicted in 
Figure 7 of a typical wargame problem. 
Your troops must take the enemy fortress, 
and in order to do so have to move across 
enemy occupied territory. In the process of 



attempting to take the fortress, your troops 
may need to take one or more intermediate 
objectives, such as bridges, hills and 
woods. By deciding where you think the 
enemy is, and in what concentration, you 
will be able to calculate the cost of taking 
one objective from a previously taken 
objective. This cost may be expressed in 
terms of casualties expected in taking the 
objective, or probability of failure, for 
example. Then by converting this problem 
into a shortest path problem, you can find 
the shortest path between point 1 and point 
7, as in Figure 8. This then provides you 



where pi = your troops 
P2 ■ bridge 1 
p3 = wood 
p<* = hill2 
P5 = bridge 2 
p6 = hill 1 
P7 ■ fortress 

with the best plan of attack for your 
troops. Of course as the game proceeds, 
you may want to continually reevaluate the 
situation by updating your probability or 
casualty cost table in the light of new 
experience, and producing a new shortest 
path solution. 

Thus there are many uses for the 
shortest path algorithm, limited only by 
our ability to recognize when a problem 
may in fact be converted into a shortest 
path in a graph representation! So here is 
an efficient algorithm; it is now up to you 
to go forth and apply it. □ 



LYrvnc©?^ 

makes your TR^-80 
a whole new 
animal. 

LYNX isn't just a telephone coupler. 

LYNX is a one-piece total telephone linkage 

system for TRS-80 Level I and II computers. It 

contains all the functions you need to tap The 

Source. Engage your business computer. Play 

games with a computer friend. Or do nearly 

anything you wish. 

Best of all LYNX costs only $279.95" A mere 

fraction of what you used to have to pay for 

equipment to do the same job. 

LYNX. To get your paws on one, call or write: 



EMTROL 
SYSTEMS, INC. 

STREET LANCASTER. PENNSYLVANIA 17602 
Phone 717/29I-H16 
viSAo' Masiei Card Welcome 








. tss-feftoSleXl >•' 



CIRCLE 139 ON READER SERVICE CARD 



>t K'hl R IM( 



113 



f 








POCKET COMPUTER $269 



MODEL I $699 



Model 
Model- 
Model 
Model- 
Model 
Model 



I, Level-ll, 4K 

I, 16K no Keypad 

I, 16Kw/Keypad 

I!, 64 K RAM 

III. 16K RAM 

III, 32K Dual Disk 
Pocket Computer w/lnterface 
TRS-80 Color Computer 
TRS-80 Color Computer Expanded 
COMM-80 Interface 
CHATTER BOX Interface 
DISK-80 Interface 
Expansion Interface, no RAM 
Expansion Interface, 16K RAM 
Expansion Interface, 32K RAM 
RS-232-C Board 



LIST 
PRICE 

$649.00 
$768.00 
$849.00 

$3899.00 
$999.00 

$2495.00 
$298.95 
$399.00 
$599.00 
$179.95 

$349.95 
$299.00 
$418.00 
$537.00 
$99.00 



oua 

PRICE 

$619.00 
$669.00 
$729.00 

$3799.00 
$929.00 

$2299.00 
$269.00 
$359.00 
$519.00 
$159.95 
$259.95 
$329.95 
$279.00 
$339.00 
$399.00 
$89.00 



with interface 



TRS-232 Printer Interlace 

16K Memory Kit, TflS-Keypad 

16K Memory Kit, TRS-Exp. Int. 

Upper/lower Mod Kit 

Video Reverse Kit 

CPU Speed-up Kit 

Data Dubber 

Percom Electric Crayon, w/cable 

TRS-80 Dust Cover (3pc set) 

TRS-80 Computer Case 

TRS-80 Monitor Case 



LIST 
PRICE 

$119.00 

$119.00 

$59.00 



$9.95 

$109.00 

$84 00 



OUR 
PRICE 

$59.95 
$59.00 
$59.00 
$24.95 
$23.95 
$24.95 
$49.95 
$279.95 
$7.95 
$99.95 
$84.00 





COLOR COMPUTER $359 



MODEL III $929 



Percom, TFD-100, 40-track 
Percom, Dual TFD-100 Drives 
Percom, TFD-40, 40-track 
Percom, TFD-200, 77-track 
Hardside, 40-track Disk Drive 
Percom Data Separator 
Percom Extender Card 
2-Drive Cable 
4-Drive Cable 



LIST 
PRICE 

$429.95 
$849.00 
$399.95 
$675.00 
$399.00 

$15.95 
$29.95 
$39.95 



OUR 

PRICE 

$399.00 

$799.00 

$379.00 

$629.00 

$359.00 

$29.95 

$15.00 

$29.00 

$39.00 



TERMS: 

TERMS: Prices and specifications are subject to change. HARDSIDE accepts VISA & MASTERCARD 
Certified checks and Money Orders; Personal checks accepted (takes 3 weeks to clear). HARDSIDE pays all 
shipping charges (within the 48 states) on all PREPAID orders OVER $100.00. On all orders over $100 a 
$2.50 handling charge must be added. COD orders accepted (orders over $250 require 25% deposit) there is 
a $5.00 handling charge. UPS, Blue Label, and Air Freight available at extra cost. 



TO ORDER TOLL-FREE: 

1-800-258-1790 

(In NH call 673-5144) 





114 



CREATIVE COMPUTING 




The Chatterbox 

A TRS-80 Interfacing Alternative 



The CHATTERBOX is a unique packaging combination of the presently 

available COMM-80 I/O Interface for the TRS-80* and an acoustic modem. 

This one box is all that is required to turn even a barebones 4K TRS-80* into a 

full time-sharing terminal. 

The CHATTERBOX includes built-in programmable 50-19200 baud serial port, a Centronics 

compatible parallel printer port, a 300 baud acoustic originate modem, and a spare TRS-BUS 

expansion connector. It comes complete with power supply, ribbon cable and connector, user's manual, and 

smart terminal software for immediate operation. When the modem is in use, the complete data conversion is 

automatically routed to the serial output port where it can be logged on a printer. 

The CHATTERBOX is the only peripheral needed to allow a TRS-80* to communicate with time-sharing systems such as 

MICRONET and the SOURCE. 

It is completely hardware and software compatible with existing TRS-80* products and connects either to the keyboard 
connector or screen printer port on the RS Expansion Interface. Features: Full 8-bit parallel port; RS-232-C serial port (up to 
19,200 baud); Acoustic modem; TRS-BUS connector for future expansion; Connects to Keyboard or E.I.; Includes terminal 
software; Users manual; Power supply. $259.95 



PRINTERS 





LIST 


OUR 




PRICE 


PRICE 


Centronics 730 


$795.00 


$749.00 


Centronics 730-3 


$895.00 


795.00 


Centronics 737 


$995.00 


$869.00 


Centronics 779 


$1395.00 


$1095.00 


Centronics 779 w/lower case 


$1595.00 


$1195.00 


NEC 5510 SpinWriter 


$3195.00 


$2595.00 


NEC 5520 SpinWriter 


$3395.00 


$2895.00 


NEC 5530 SpinWriter 


$3195.00 


$2495.00 


NEC Tractor-Feed Option 


$249.00 


$225.00 


LRC 7000* (64-col.) 


$405.00 


$299.00 


LRC 7000 s (40-col.) 


$389.00 


$289.00 


Okidata Microline-80 


$800.00 


$699.00 


Tractor-Feed Option 


$140.00 


$129.00 


RS-232-C Option 


$299.00 


$279.00 



LRC to TRS-80 

LRC to PET, IEEE 

LRC to RS232C, male or female 

730 or 737 to TRS-80 

NEC or 779 to TRS-80 

RS-232-C to RS-232-C, male to male 



$20.00 
$59.00 
$65.00 
$29.00 
$35.00 
$24.95 



GENERAL INTEREST 



SPECIAL 







LIST 


OUR 




PRICE 


PRICE 


BSR System X-10 Home Controller 


$124.95 


$109.95 


BUSY BOX, TRS-80 


$114.95 


$99.95 


BUSY BOX, S-100 


$119.95 


$114.95 


AC-SFK-31 Line Filter 


$24.95 


$19.95 


IS0-2 Line Filter & Isolator 


S56.95 


$49.95 


IS0-2/CBS Line Filter-Isolator 


S70.95 


$59.95 


IS0-7/CB Super Filter-Isolator 


$146.95 


$99.95 


Mini-Flex Diskette File 


$24.95 


$19.95 


CASIO C-80 Calculator Watch 


$49.95 


$44.95 


BONE F0NE 


$69.95 


$56.95 


L0G0S-9 Printing Calculator 


$99.95 


$79.95 


CASIO 






C-80 CALCULATOR 






WATCH $44.95 




i y i ". t - 



(plus $2.50 postage and handling) 



BONE 
FONE 
$56.95 



(plus $2.50 postage and handling) 



OLIVETTI 

LOGOS-9 

PRINTING 

CALCULATOR 

$79.95 

(plus $2.50 postage and handling) 




TO ORDER TOLL-FREE 

1-800-258-1790 





(In NH call 673-5144) 



CIRCLE 183 ON READER SERVICE CARD 



NOVEMBER 1980 



115 



Creative Computing's Basic Com- 
puter Games includes Baker and North's 
ingenious program for Conway's popula- 
tion dynamics simulation, Life. Unfor- 
tunately, on some machines this program 
is a bit sluggish. For instance, on my Wang 
PCS II it takes about 1 5 1/2 minutes for it to 
generate the first 21 tableaux of Baker and 
North's sample run. 

Much of this time is spent repeatedly 
executing program steps 530-570. The 
simulation uses a matrix, and the program 
identifies its "active" portion — a rectangle 
within which populations can change 
during the short run. For each cell in that 
rectangle, steps 530-570 obtain population 
information about both it and its eight 
neighboring cells. Thus, each cell that lies 
in the rectangle's interior will be inves- 
tigated 9 times per tableau. During the first 
21 tableaux, there are 25,992 such 
investigations! 

The remedy is to change the way that 
one represents populations. The program 
FASTLIFE uses the same version of Basic, 
and makes the same assumptions, as the 
Baker-North program. But each cell of its 
primary (Z) matrix reflects both whether it 
and whether its neighbors are occupied. 
This allows the program to skip over all 
cells except those in which a birth or death 
is about to occur. FASTLIFE also savesa 
little more time by not doing the testing for 

Its primary matrix reflects 
both whether it and its 
neighbors are occupied. 
This allows the program 
to skip over all cells 
except those in which a 
birth or death is about to 
occur. 

illegal values performed by lines 301-307 of 
the Baker-North program. (Instead, an 
illegal value merely terminates the run.) 

On the PCS II, FASTLIFE generates 
the first 2 1 tableaux in 7 !4 minutes — more 
than twice as rapidly as the Baker-North 
program. It is especially efficient whenever 
populations are loosely packed, as when 
the center of the matrix is empty, or the 
population includes small, isolated stable 
groups. As an extreme example, for an 18 
by 18 rectangle with a square of four 
occupied cells in each corner, the Baker- 
North program requires 101 seconds per 
iteration, while FASTLIFE needs only 
21'/ 2 . 

Finally, if your Basic includes a few 
elementary matrix operations, you can 
make FASTLIFE run even faster. Inter- 
ested readers are invited to request from 
me a PCS II program that generates the 
first 21 tableaux in less than five minutes, 
and the 18 by 18 rectangle in I3!/> seconds. 

Arthur L. Thomas, Rice University, P.O. Box 1892, 
Houston, TX 77001. 





wM<m 




Arthur L. Thomas 



10 REM "FASTLIFE" 

20 PRINT TAB(26); "J.H. CONWAY'S 'LIFE'": PRINT 

30 REM PROGRAM BY ARTHUR L. THOMAS, THE UNIVERSITY OF KANSAS, THE 

40 REM SCHOOL OF BUSINESS, LAWRENCE, KANSAS 66045 

50 PRINT TAB (6) ; "BEGIN EACH INPUT LINE WITH A DOT, THEN ASTERISKS AND 

SPACES." 
60 PRINT TAB (10); "TO END INPUT, RESPOND TO THE PROMPT WITH / (RETURN) . 

: PRINT : PRINT 
70 DIM Y(26,26), Z(26,26), A$(21)21 
80 L = L+l 
90 INPUT A$(L) 

100 IF LEFT$(A$(L),1) * "/" THEN 150 
110 IF W >= LEN(A$(L))-1 THEN 130 
120 W = LEN(A$(L))-1 
130 IF L - 20 THEN 150 
140 GOTO 80 

150 L = L-l: LI = INT( (26-D/2) +1: Wl = INT( ( (26-W)/2) +1.5) 
160 L9 = L+Ll-1: W9 ■ W+Wl-1 
170 FOR I = LI to L9 
180 FOR J = Wl TO W9 

190 IF MID$(A$(I-L1+1), (J-Wl+2) ,1) - ■ ■ THEN 260 
200 Z(I,J) = Z(I,J)+10 
210 FOR II = -1 TO 1 
220 FOR Jl * -1 TO 1 
230 Z(I+I1,J+J1) - Z(I+I1,J+J1)+1 
240 NEXT Jl 
250 NEXT II 
260 NEXT J 
270 NEXT I 
280 L2 * LI: L8 - L9: W2 = Wl: W8 - W9: Ll,L9 

INT ( (W1+W9) /2) : Q = 
290 FOR I = 1 TO L2-2 :PRINT :NEXT I 
300 FOR I « L2-1 TO L8+1 
310 FOR J = W2-1 TO W8+1 
320 IF Z(I,J) > 9 THEN 480 
330 IF Z(I,J) <> 3 THEN 560 
340 Y(I,J) « Y(I,J)+10 
350 FOR II » -1 TO 1 
360 FOR Jl * -1 TO 1 
370 Y(I+I1,J+J1) - Y(I+I1,J+J1)+1 
380 NEXT Jl 



INT((Ll+L9)/2): W1,W9 



390 NEXT 11 






400 IF LI < 


I THEN 420 




410 LI * I 






420 IF L9 > 


I THEN 440 




430 L9 « I 






440 IF Wl < 


J THEN 460 




450 Wl = J 






460 IF W9 > 


J THEN 560 




470 W9 » J: 


GOTO 560 




480 Q - p+1: 


: PRINT TAB(J+22); 


l 




490 IF ABS(Z(I,J)-13.5) * .5 THEN 400 

500 Y(I, J) *= Y(I,J)~10 

510 FOR II * -1 TO 1 

520 FOR Jl - -1 TO 1 

530 Y(I+I1,J+J1) « Y(I+I1,J+J1)-1 

540 NEXT Jl 

550 NEXT II 

560 NEXT J 

570 PRINT 

580 NEXT I 

590 FOR I = L8+2 TO 22 :PRINT :NEXT I 

600 PRINT TAB(20); "GENERATION"; G; TAB(39); "POPULATION"; Q; CHR$(07); 

610 FOR I = L2-2 TO L8+2 

620 FOR J = W2-2 TO W8+2 

630 IF Y(I, J) = THEN 660 

640 Z(I,J) = Z(I,J)+Y(I,J) 

650 Y(I, J) = 

660 NEXT J 

670 NEXT I 

680 G - G+l 

690 GOTO 280 



116 



CREATIVE COMPUTING 



- RACET computes — RACET SORTS — RACET UTILITIES — RACET computes — RACET SORTS — RACET UTILITIES - RACET computes 



r- RACET computes -3 

"^C Palmdale. Oranae CA 92665 

FROM THE LEADER IN UTILITY SOFTWARE 
' FOR THE TRS* COMPUTERS 

fr* NEW *• HARD/SOFT DISK SYSTEM (MOD II) $400 

"he Hard Disk Software Implementation You Have Been Waiting 
c or!! MOD II TRSDOS compatible — using Cameo controller 
nterface to popular large hard disk fixed/removable combinations 
Ampex, CDC, Diablo, Pertec, Wanco, etc.). Compatible with your 
existing programs — change only 'filename'. All disk BASIC state- 
nnents identical. Improved dynamic file allocation. A single file can 
De as large as one disk — 20 megabytes or larger. Alternate mode 
allows 24-million byte record range. Directory expandable to handle 
thousands of files! Includes special XCOPY, DCS, and SZAP 
utilities for use with hard or soft disks. Parameterized FORMAT 
utility includes options for specifying the number of sectors/track, 
platters/drive, sectors/granule, sectors/directory, etc. 

• • NEW •* BASIC LINK FACILITY 'BLINK' $25 Mod I 

(Mod I Min 32K 1-disk) $50 Mod II 

Link from one BASIC program to another saving all variables! The 
new program can be smaller or larger than the original program in 
memory. The chained program may either replace the original 
program, or can be merged by statement number. The statement 
number where the chained program execution is to begin may be 
specified! 
INFINITE BASIC (Mod I Tape or Disk) $49.95 

Extends Level II BASIC with complete MATRIX functions and 50 
more string functions. Includes RACET machine language sorts! 
Sort 1000 elements in 9 seconds! ! Select only functions you want 
to optimize memory usage. 

INFINITE BUSINESS (Requires Infinite BASIC) $29.95 

Complete printer pagination controls — auto headers, footers, 
page numbers. Packed decimal arithmetic — 127 digit accuracy 
+ ,-, *, /. Binary search of sorted and unsorted arrays. Hash codes. 

BASIC CROSS REFERENCE UTILITY (Mod II 64K) $50.00 

SEEK and FIND functions for Variables, Line Numbers, Strings, 
Keywords. 'All' options available for line numbers and variables. 
Load from BASIC — Call with 'CTRL'R. Output to screen or printer! 

Circle reader request for free 24-page catalog. 



DSM $75.00Modl,$150.0f 

(Mod I Min 32K 2-drive system. Mod II 64K 1-drive) 

Disk Sort/Merge for RANDOM files. All machine language w. 
alone package for sorting speed. Establish sort specification in 
simple BASIC command File. Execute from DOS. Only operator 
action to sort is to change diskettes when requested! Handles 
multiple diskette files! Super fast sort times — improved disk I/O 
times make this the fastest Disk Sort/Merge available on Mod I or 
Mod II. 

UTILITY PACKAGE (Mod II 64K) $150.00 

Important enhancements to the Mod II. The file recovery capabilities 
alone will pay for the package in even one application! Fully 
documented in 124 page manual! XHIT, XGAT, XCOPY and 
superzap are used to reconstruct or recover data from bad 
diskettes! XCOPY provides multi-file copies, 'wild-card' mask 
select, absolute sector mode and other features. SUPERZAP 
allows examine/change any sector on diskette include track-0, and 
absolute disk backup/copy with I/O recovery. DCS builds con- 
solidated directories from multiple diskettes into a single display 
or listing sorted by disk name or file name plus more. Change 
Disk ID with DISKID. XCREATE preallocates files and sets 'LOF' 
to end to speed disk accesses. DEBUGII adds single step, trace, 
subroutine calling, program looping, dynamic disassembly and more!! 

DEVELOPMENT PACKAGE(Mod II 64K) $125.00 

Includes RACET machine language SUPERZAP, Apparat Dis- 
assembler, and Model II interface to the Microsoft 'Editor 
Assembler Plus' software package including uploading services 
and patches for Disk I/O. Purchase price includes complete copy 
of Editor Assembler + and documentation for Mod I. Assemble 
directly into memory, MACRO facility, save all or portions of 
source to disk, dynamic debug facility (ZBUG), extended editor 
commands. 

COMPROC (Mod I — Disk only) $19.95 

Command Processor. Auto your disk to perform any sequence of 
instructions that you can give from the keyboard. DIR, FREE, 
pause, wait for user input, BASIC, NO OF FILES and MEM SIZE, 
RUN program, respond to input statements, BREAK, return to 
DOS, etc. Includes lowercase driver, debounce, screenprint! 

DEALER INQUIRIES INVITED 



I 



3 
> 

o 
m 



m 
en 



> 

o 

m 

H 
o 
o 

3 

C 
CD 



> 

O 

m 

H 
05 
O 

H 
CO 



3D 
> 

O 
m 



CHECK. VISA, M/C, C.O.D., PURCHASE ORDER 'TRS-80 is a registered trademark of 
Telephone Orders Accepted (714) 637-5016 Tandy Corporation 

RACET SORTS — RACET UTILITIES — RACET computes — RACET SORTS— RACET UTILITIES — RACET computes — RACET SORTS — RACET UTILITIES — RACET computes — 
CIRCLE 188 ON READER SERVICE CARD 



m 

CO 



13 

> 
O 

m 

H 
o 
o 

3 

T3 

C 

CD 
CA 

I 

ID 
> 

o 

m 



SORCERER SOFTWARE 



SYSTEM 2 by Richard Swannell, loads into the top ot available RAM and becomes an integral part of the BASIC 
language. All commands are single keystroke. SYSTEM 2 is written in Z80 and provides the following features 

1 SCREEN EDITOR. Use the editor to insert, replace, delete or rubout characters m your BASIC program Watch the 
line change on the screen! Gone are the days of typing in a whole line to change one character 1 

2 FUNCTION KEYS. SYSTEM 2 allows 12 keys to be programmed to represent one or more characters or up to 
several lines of text each' After a key is programmed, by simply hitting key, all the text is sent to the processor 
just as if you typed it in on the keyboard 1 Function keys may be used in all modes of operation, including the 
editor. This feature is handy tor lengthy andor often used commands and may include multiple statements 

3 RENUMBERING ROUTINE. With a single keystroke your program is renumbered Starting line number and 
increment may be changed 

4 BASIC BUFFER PROTECTOR. SYSTEM 2 sends a iCfll when the BASIC BUFFER is full This prevents BASIC from 
crashing. 

5 PRINTER DRIVER. Simply hit CTRL P to direct output to Centronics printer 

6 RIVIVAL ROUTINE. If NEW or CLOAD are typed, or RESET is hit by mistake, your program may be recovered. This 
is a safety device. 

OTHER FEATURES 

- RUNSTOP stops execution until any other key is hit. 

- CLEAR clears screen then sends a (CR). Hit CLEAR to start on new page' 

- CTRL characters such as ESC, LF and CLEAR don't return ?SN ERROR. 

- RUB doesn't require the SHIFT key to be depressed. This quickens editing. 

- Includes a Real Time Random Number Generator 

- Returns automatically to BASIC after TAPE CRC ERROR while CLOADmg. 

- Suppresses premature CRLF Normally, if RUB is used extensively while typing in a BASIC line, the cursor will 
drop down to the next line before reaching the end of the current line. SYSTEM 2 prevents this. 

- SYSTEM 2 requires 2K of memory and is available in 8, 16, 32 & 48K versions. $35.50 

RS232 PRINTER DRIVER. Requites 250 bytes of memory and is relocatable. Suitable for MONITOR, STANDARD 
BASIC, WORD PROCESSOR PAC & DEVELOPMENT PAC. Stores each character in a buffer then sends the whole line 
at once, which solves timing problems. $10.00 

COMBINED SYSTEM 2 tt RS232 PRINTER DRIVER. SYSTEM 2 with the RS232 printer driver instead of Centronics 
printer driver. M0.00 

LUNA LANDER. Written in Z80 and Basic and requiring 16K, LUNA LANDER uses graphics to the full. Land you craft 
on the moon in real time. But be careful to land softly, otherwise you will see your LANDER crumple before your very 
eyes! $15.00 




SYSTEM SOFTWARE 

1 Kent Street, Bicton, 6157 Australia 



Program comes on cassette and includes full documentation. Specify size of 
RAM. Prices in Australian Dollars. Add $2 tor overseas airmail. 
SORCERER is a trade mark of EXIDY INC. 



CIRCLE 239 ON READER SERVICE CARD 



Tarbell 
Floppy Disc Interface 

Designed for Hobbyists and 
Systems Developers 




• Plugs directly into your IMSAI or ALT AIR and handles up 
to 4 standard single drives in daisy-chain. 

• Operates at standard 250K bits per second on normal disc 
format capacity of 243K bytes. 

• Works with modified CP/M Operating System and BASIC-E 
Compiler. 

• Hardware includes 4 extra IC slots, built-in phantom boot- 
strap and on-board crystal clock. Uses WD 1771 LSI Chip. 

• 6- month warranty and extensive documentation. 

CIRCLE 202 ON READER SERVICE CARD 



/ 950 DOVLEN PLACE, SUITE B 
CARSON. CA 90746 
(213) 538-4251 • (213) 538-2254 




• 



r 



Car c B§ce-. 

Anatomy 
of a 



Translation 



— x ; 3TTW! r v"V»' 7'': . ',' B ;- l T' T SR7 r\'l ■• 




Car Race came to us in the form shown 
in Listing # 1 , written for a DEC PDP/ 1 1 . 
Since one of the most common areas of 
questions from readers concerns transla- 
tion of programs, and since the program 
had to be translated anyway, this seemed 
like a good time to explain the techniques 
and approaches used when adapting a 
program to another language or dialect. 
The first, and most crucial, step is 
understanding exactly what is happening 



Richard Forsen, 9496 Weston Rd., New Hartford, NY 

13413 

R e 3 d y 



in the program. Attempting a blind line- 
by-line translation would be futile; you 
have to know what is happening and why it 
is happening, not just what is being 
performed on a line. Fortunately, Richard 
Forsen, who sent us this program, also sent 
in a number of notes on the functions used. 
So, what exactly does the program 
do? First, it sets up boundaries that mark 
the edges of the road and the position of 
the car. Next, the keyboard is checked for 
input. If the player does nothing, the 
program waits a certain amount of time, 
then makes a move. Random factors 
determine the way the road will curve, and 



1 RANDOMIZE 

10 OPEN "KB? " AS FILE 
ON ERROR GOTO 4 BO 
SYS(CHRil>(3) ) 
33 

B .1. + 1 
38 



20 
30 

40 
50 
60 



Bl= 

B2: 



80 B 

90 G 

100 

110 

120 

130 

140 

150 

160 

170 

180 

190 

200 

210 

220 

.V.. A.. \ / 

230 
240 
250 
260 
270 
28 
290 
300 
3 1 
320 
350 
360 
370 
380 
390 
400 
4 1 
60 
480 
700 



40 



'0 



*~SYS<CHR*<4) ) 
ET #1 
WAIT 1 

FIELD #1, RECOUNT AS C$ 

I F C * < > ' 1 " A N D C $ < > H 2 " T H E N 

ON MALCC*) GOSUB 220 v 230 

IF B1~T OR B2«T THEN 400 

PR INT TAB ( B 1 > r D* i TAB CT ) i " f " ? TAB ( B2 ) f D$ 

A=INT<RND*5>+1 

ON A GOSUB 200*2l0*210f210f20< 

ON B GOSUB 250 t 240 

m~m+i:goto so 

B=l X RETURN 

B~2: RETURN 

T«T-1 J RETURN 

T=T+i: RETURN 

GOSUB 350 J RETURN 

Y=INT<RND*3>+1 

IF X=Y THEN 250 

X=Y 

IF X«l 

IF X~2 

IF X«3 

GOSUB 350 

RETURN 

B1=B1+X~2 

IF BK1 THEN Bl~ 

B2=B1+10 

IF B2>70 THEN Bl 

RETURN 

PRINT TAB(T) ? "I 

P R I N T ' Y U S C R E D " ? M r " P 1 N T S 

GOTO 700 

RESUME 140 

END 



/ 



THEN D*= 
THEN B*= 
THEN B**"\" 



II I H 
I 



60 t GOTO 370 



CRASH !!!!!!! 1 !!!!!! j ! " 



the direction of the curve determines the 
type of character which will be used to 
mark the edge. Finally, a check is made to 
see if the driver has crashed. If he hasn't, 
his score is increased. This covers the main 
flow of the program. The next step is to 
find a way to achieve the same sequence of 
actions in another dialect of Basic. 

Listing #2 shows the translation, 
written, in this case, on a Commodore 
PET. Scanning the program, it becomes 
obvious that "Bl" and "B2" control the 
width of the track. "T" is the position of the 
player, which is changed when he presses 
the "1" or "2" key. First, the DEC-specific 
functions have to be changed or removed. 
That means lines 1-30 have to go. Lines 40- 
60 are variable definitions, so they stay. 
Now we get to the tricky part. Lines 80- 1 00 



46 Bl=20 
50 B2=B1+10 
60 T=24 
80 REM 
90 GET C* 



100 

101 
120 
130 
140 
150 
160 
170 
180 
190 



IFC*= ,,n THEN S=S+1'IFS<2 THEN90 

S=*0 

I FC*<> " 1 " RNDC*<> " 2 " THEN 1 40 

ON VflL<C*>GOSUB22O,230 

IF <B1=T> OR <CB2=T> THEN 408 

PRINT TRB<Bl>;D*JTRB<T>; ,, + ";TflB<B2^;B* 



Ready 



v. 



Listing I 



R»INT<RNIK1>*5>+1 

ON R GOSUB 200,210,210,210,200 

ON B GOSUB 250,240 

M*M+1 :GOT08© 
200 B-l 'RETURN 
210 B=*2: RETURN 
220 T=T-1 -RETURN 
230 T-T+i: RETURN 
240 GOSUB350 = RETURN 
250 V»INT<RNB<1>*3)+1 
260 IFX=VTHEN25© 

X=V 

IF X-1THEND*«V M 

IF X=2THEND$= H r' 

IFX-STHENDS^'V 
310 GOSUB350 
320 RETURN 
350 Bl=*Bl+X-2 
360 IFBK1THENB1=1 
370 B2=B1+10 

380 I FB2>39THENB 1 =29 • GOTO370 
390 RETURN 

400 PRINT TRB<T>; "$ CRRSH! ! ! " 
410 PRINT" VOU SCORED tt ;M; "POINTS. 

420 M=0 

430 FORI=1TO500:NEXTI 

460 GOTO 40 
RERDV. 

Listing 2 



270 
280 
290 

300 



ii 



118 



CREATIVE COMPUTING 



r 



\ 



• 



/ 



/ 



/ 



/ 



/ 



\ 



\ 



\ 



+ 

/ + 

/ + 

¥ / 
+ / 

+ : 
•f / 
•f / 
+ / 
+ / 
+ / 

f v 

+ \ 
+ 

+ ! 
+ ! 
f \ 

+ \ 

+ \ 

\ + \ 



+ 

+ 
+ 



/ 



/ 




\ 



/ 



+ 
+ 
+ 
+ 
+ 



/ 



\ 



/ 



/ 



/ 



/ 

i 
i 



\ 



+ 
+ 
•f 
+ 
•f 
+ 
\ f 
\ + 
\ + 

\ f 

/ * 

/ 

\ 



/ 



\ 



/ 

i 

i 



\ 



\ 



/ 



\ 



/ 



/ 



/ 



/ 



/ 



/ 

i 
i 



/ 



\ 



+ 

f 
•f 

+ 

•f 
+ 

+ 
f 
•f 

f / 
f / 
f ! 
•f / 
f / 



/ 



/ 



/ 



/ 



/ 



/ 



\ 



\ 



+ 

f 
f 
f 

f 
f 

•f 
\ f 

: f 



\ 



\ 



\ 

i 
i 



wait a specific time for an input. The inpuP 
portion can be done in Microsoft with the 
"GET" statement, but the "WAIT" takes a 
bit more work. In this case, "GET" is made 
to loop back whenever there is a null input. 
By adding a counter to this loop, we can 
control the time. This is accomplished in 
line 100 (all changes refer to Listing #2). 
The limit on "S" needn't be "2"; it can be 
any value. The larger the number, the 
longer the wait. The "RND" functions had 
to be changed to fit the Microsoft format. 

At this point, the game was working; 
the road appeared and scrolled upward 
while the cross moved within the lanes. But 
the game was written for a printer, where 
the width is 70. To use the game on a CRT, 
lines 40, 60 and 380 had to be scaled down. 
Now the road doesn't run off the screen. 
But the game ends fairly quickly, and 
typing "RUN" every few seconds can be 
annoying. To prevent this, the game was 
made into a loop. A delay allows the player 
to see his score, then the game begins 
again. "M," which holds the score, had to 
be reset to zero, as done in line 420. 

That about covers the translation. 
Many modifications are possible. First, 
wherever constants are found, variables 
can be substituted. This allows for skill 
levels and other changes. For example, in 
line 100, a variable could be used instead of 
the number "2." Then, with a routine to 
check the input, the player could use 
another key to "shift gears," changing his 
speed during the game. By changing the 
"10" in line 50, different skill levels can be 
introduced. The game can start with 
selection of difficulty; the harder the level, 
the narrower the road. 

The major change in the program, 
combining "GET" with a delay loop, can 
be accomplished on other computers in 
various ways. TRS-80 owners will have to 
use the "INKEYS" function, Apple II 
Integer Basic users will need "C = PEEK 
(-16384)," followed by the usual "POKE 
(-16368,0)." 

Once again, in doing any translation, 
the first task is to get a complete under- 
standing of the logic behind the program. 
From there, it is merely a matter of getting 
your own language to do the same 
operations in the same order. □ 



V 



CRASH ! ! ! ! ! 
YOU SCORED 76 



i i i i i i i 



POINTS* 




©Creative Computing 



This Weekend: 

STIK 
IT.... 

••to your 



That's right! Esmarks VIDIET-STIK light pen has 
the TRS-80 CONNECTION for LEVEL I & II. Your 
4K to 48K TRS-80 System will come alive under 
your VIDIET-STIK within minutes of its arrival. 
That's because there are no wires to solder or 
traces to cut. You're up and running as fast as 
you can plug the interface into your system's 
cassette EAR-jack, CLOAD our custom LIGHT- 
WAVE demonstration software and RUN. And 
because the interface has a plug for your re- 
corder, you won't have to unplug it again when 
loading your other software tapes. The inter- 
face allows them to pass right thru whenever 
you're not using the pen. It's exclusive "switched 
tip" design means the pen's electrically iso- 
lated from your system when it's not in use. 
Just point & press! It's that simple... Plug, 
CLOAD and RUN. And have we got the software 
for you to RUN with! Our demonstration tape 
includes a calibration program (used to adjust 
the CRTs brightness and contrast) plus STIK 
TAC-TOE, AWARI and TOWERS. Two challeng- 
ing games and a puzzle that will keep grown- 
ups and children Stik'ing it to your TRS-80 for 
hours. And there are instructions provided so 
you can begin writing your own light pen pro- 
grams (lightware) for fun or profit (Level II). Or, 
just sit back and enjoy our LIGHT-WAVE tapes 
each month. Esmarks unmatched commit- 
ment to lightware can bring you up to five new 
games, puzzles, drills & educational quizzes 
or simulations each month. Our current LIGHT- 
WAVE releases are: 



LIGHT-PAK 2- LIGHTPEG (4 peg- jump puzzles) 

ENDRUN (Othello with a twist') 
(LEVEL II) LIFE9 (Conway's LIFE with 

mutations) 

Price: $19.95 (including postage 

& handling) 
LIGHT-PAK 3- LITEGAMMON (Backgammon 

you'll Stik with) 
(LEVEL II) STIKWUMPUS (Caves with a 

little life) 

MAZEMASTER (Maze after 

maze to poke thru) 

Price: $19.95 (including postage 

& handling) 

Order yours now and we'll include a free copy 
of FLASHBACK, Esmark's newsletter dedicat- 
ed to the latest news in lightware applications. 
And don't forget to tell your friends. The 
VIDIET-STIK can also be ordered for use on 
most other micro systems using the following 
processor chips: 



T 

R 

S 
i 

8 

O 



8080 



Z80 



6800 



6502 



All that's required is a standard cassette jack 
leading to Ground and a readable single bit in- 
put port. Driver software is provided along with 
instructions for writing lightware applica- 
tions. And tell your local Dealer that Esmark's 
got a Dealer package he won't want to miss 
out on. Delivery is 3 to 6 weeks from receipt of 
your order. COD s are $3.00 extra but will be 
shipped within 2 weeks. All prices are F.O.B. 
Mishawaka, Indiana. Indiana residents add 
4% sales tax. 



ALSO COMING FROM ESMARK. 

•TRS-80 Printer Interface (Cassette AUX-jack 
interface for all RS232 prints. Includes LLIST 
& LPRINT software) 

•TRS-80 RS232 Communications Interface 
(Makes your TRS-80 a full I/O terminal to time- 
sharing systems the world over. Gives you 
intelligent or dumb terminal capabilities at 
110 or 300 BAUD. Also includes Printer Inter- 
face above with 20 mA current loop & TTL 
level I/O options.) 

—TRS-80 is a trademark of Tandy Corporation— 



■ 33 



oO 



? • 



£ <fi 



NOVEMBER 1980 



119 



INCORPORATED 
507% E McKINLEY HWY. MISHAWAKA, IN 46544 

(219) 255-3035 $62 95 

PLUS $1.50 

•ELECTRONIC SYSTEMS MARKETING J????**}" 

HAN1JUNU 

CIRCLE 196 ON READER SERVICE CARD 




We publish lots of routines for checking 
user input, but wooden you think this is 
the ultimate? 



Introduction 

The purpose of this article is twofold: 
to show how modular programming can be 
done in Basic, and to show how a small 
computer was used at an energy fair to help 
the visitors decide whether wood was an 
economically-viable alternative to fuel oil 
for home heating. 

Background 

When I was asked to write the 
program for an energy fair to be held at the 
New Hampshire Vocational Technical 
College in Berlin, I was given about one 
month's notice, and some very vague 
specifications as to what the program was 
expected to do. The woods department of 
the Brown Paper Company was to have a 
display of wood types with their associated 
BTU values per cord. My program was to 
complement that display and provide the 
visitors with a printout of wood values 
based on the cost of heating oil. That part 
was easy, as I had written a program for 
that purpose earlier. 

The difficult part was the inclusion of 
the visitors' estimates on the costs 
associated with obtaining wood for fuel. 
These costs are variable, and depend 
strongly on the equipment used and its age 
and condition. I decided to set the program 
up so that the visitors could enter this 
information themselves. This decision 
made the program much more difficult to 
write. 

I expected that most of the visitors 
would view not only the computer but even 
the keyboard as an exotic device. The 
program therefore had to be friendly. By 



Albert C. Brunelli, Professor, Industrial Electronics, 
NHVTC, Berlin, Milan Road, Berlin, NH 03570. 



friendly I mean that it must not display 
interpreter error messages and must 
prompt the operator in a way that he can 
understand. Since I expected that each 
visitor would want to compare the 
economy of heating with wood under 
different circumstances, I had to make 
provisions for changing the values of the 
variables so that several printouts would 
be available for comparison. 

All these criteria taken together lead 
me to conclude that the program would 
have to be modular. The logic necessary to 
implement all the features mentioned 

The decimal-point prob- 
lem was brought to my 
attention by a nine-year- 
old who was testing the 
program. He had two 
decimal points in one of 
his entries . . . 

would be fairly complex and the modular 
approach would make for easier design. 
Each question submitted to the operator 
would be in its own subroutine so that it 
could be called back for modification later. 
Each entry would be processed in a 
subroutine to avoid repeating the same 
function in each question subroutine. 

The first subroutine written was the 
entry processing subroutine, since it would 
determine the structure of all the others. I 
wanted to accept input in string form, 
despite the fact that all the entries are 
numerical. This method allows greater 
flexibility in processing and prevents the 
printing of interpreter error messages and 
associated program stoppage. It also 
permits a greater variety of responses, such 
as typing a question mark when the user 
does not know the answer to a question 
and wants the program to supply a default 
value. 



The next step was writing the question 
routines. Each question would be dis- 
played on the video screen; then the 
computer would wait for an answer from 
the operator. The answer would be 
processed and then reprinted on the screen 
to show that it had been received correctly. 
The question routines also have provision 
for correcting the decimal place of the 
response, since users notoriously fail to 
read directions. (If the question requests an 
answer in cents, the user will always answer 
in dollars.) 

The last step was the menu. Once the 
user has a printout of the results of the first 
set of entries, he might want to change 
some of the variables — either because the 
results were far from what was expected 
(most people have no idea how expensive it 
is to operate a truck) — or because he 
wants to see the effect of an increase in the 
price of oil. 

The Program 

The program listed below is quite 
general in structure and can easily be 
modified to perform in any interactive 
environment. It comprises three major 
sections: the set-up section in which the 
constants and formulas are defined; the 
main body of the program is which the 
operator supplies the variables, calcula- 
tions are made, and results printed; and the 
menu section in which the operator is 
permitted to change the values of the 
variables so that different situations can be 
compared. Each of these sections will be 
explained in detail. 

Lines 10 to 110 

The usual clerical information at the 
top of programs. 

Line 120 

This line tells the computer to attach 
the printer to file channel number 3. The 
PolyMorphic Systems 8813 treats the 
printer like any other peripheral device and 
talks to it through a file channel. 



120 



CREATIVE COMPUTING 



mum 



i 



i 



i 



i 



i 



NONPROFIT 
PEOPLE'S SOFTWARE 



Up to 77 high-quality programs 
for TRS-80, only $10.95 



LEVEL II TAPES: 

'Tiny' Pascal runs on any 16K Level II system, includes the 
programming structuring capabilities of full Pascal, but not 
data structuring. 

Able to compile Z-80 machine code, programs run about 
five-times faster than Level II Basic— graphics run eight- 
times faster! Requires use of T-Bug and Edit-Assembler. 

Tape 3, People's Pascal I $19.95 

Tape 6P PASPATCH allows old Pascal II (no longer 
available) to use printer, floppy disk $15.00 

Tape 1, 34 business, educational, game programs $10.95 
Tape 2, 77 programs from Osborne book: 'Some Com- 
mon Basic Programs' $10.95 
Tape 5, 24 business, educational, game programs $10.95 
Tape 7, 31 business, educational, game programs $10.95 
Tape 8, about 30, including 1,700-baud tape loader $10.95 

Overseas, add $1us per tape for postage 
California residents add 6 pet. tax. Dealer inquiries invited 



COMPUTER INFORMATION EXCHANGE 

Box 159 
San Luis Rey CA 92068 



CIRCLE 124 ON READER SERVICE CARD 



^>*vevcve^^^ve^^^^^^^:vejvr^^vc>^>^^>^>^:g l 



I 
t 
I 
J 

( 
I 
I 
I 
< 
I 
I 
I 
I 

I 

i 

< 
< 
< 

I 

I 
< 




CO 



COMPi. 



AIM65 



Data Acquisition 



16 analog inputs for your AIM65 for measuring temperature, 
humidity, pressure, position, light levels, or any other analog voltage 
in the range of to 5 volts. Each input is converted to a number in the 
ri range of to 255. Conversion time is less than 100 microseconds — 
H Only $295 complete. Includes cables and power supply. Assembled 
and tested. Our usual 30 day money back trial period applies. 



« 

i 
\ 

I 

I 
l 
i 
I 
I 
» 
( 
« 



Order direct or contact your local computer store. 

VISA and M C accepted — send account number. 

expiration date and sign order 

Add $3 per order for shipping and handling — 

foreign orders add 10% for air postage 

Mention this magazine with your order and deduct 2% 




Connecticut microcomputer, Inc. 

34 Del Mar Drive, BrookfieW, CT 06804 
203 775-4595 TWX 710 456-0052 



XX.XXJXXXJ^XX.XX.X.X 



I 

I 

I 
I 
I 

I 
t 





fcippkz ][ 



i6K computer 

Disk II with Controller $ 479 ...without $425 



APPLE II 
ACCESSORIES 

Apple Joystick M7 

ABT Numeric Input Keyboard 114 

ALF Music Synthesizer 246 

Brightpen Light pen from Sottape 32 

Clear Cover for Apple Computer 26 

CCS Programmable Timer Module 159 

Dan Paymer Lower Case Kit 4t 

D C Heyes Micromdem 336 

Extender Board 27 

Graphics Input Tablet M9 

Introl X 10 Remote Control System 239 

Introl X 10 Controller Only 164 

MCrR Sup R Term SO Column Board 326 

Microsoft Z 80 Soft Card 299 

Novation Cat Modem 159 

Rom writer 149 

Speechlink 2000/64 Word Vocabulary 216 

Super Talker Speech Synthesizer 239 

Sup R Mod RF TV Modulator 26 

WE SHIP FAST! 



$899 



APPLE II 32K $999 
APPLE II 48K $1099 

DOS 3.3 with upgrade kit $48 



SVA 8 Disc Controller Card 329 

Verse Writer Digitizer Drawing System 209 

Adventure by Microsoft $27 

Apple Bowl 14 

Applebug Assembler/Dissassembier 69 

Applebug Debugger 27 

Applepost Graph & Plot System 6fl 

Applepost Mailing List System 44 

Applesoft Utility Programs by Hayden 27 

Applewnter Word Processor St 

Bill Budges Space Game Album 39 

Bill Budges Trilogy of Games 29 

The Cashier Retail Management System 199 

CCA Dete Management by Personal Software 84 

The Contributed Volumes 1-6 w/manuals 29 

Desktop Plan by Personal Software 79 

Dow Jones Portfolio E valuator 44 

Forth II by Programme Software 46 

Fortran for use with Language System 169 

Pascal Language System 396 

Sergon II Chess Game-cassette 27 

Sargon II Chess Game-disk 36 

Shell Gemee 27 

Space Invader cassette IB 

Space Invader disk 26 

Sub Logic FS-1 Right Simulator cassette 23 



Sub Logic FS-1 Flight Simulator disk 29 

Sybex Apple 80 8080 Simulator 17 

Visicalc by Personal Software 116 



APPLE COMPUTER 
INTERFACE CARDS 



Asynchronous Seriel Interface #771 0A 146 

Applesoft II Firmware Card 148 

CCS Arithmetic Processor Card #781 IB 329 

CCS Parallel Interface Card > 7720A 166 

Centronics Printer Interface Card 179 

Apple Clock/Calender Card by Mountain Hardware. 229 

Communications Card t> DB26 Cable 179 

Integer Besic Firm were Card 149 

Parallel Printer Interface Card 139 

Prototyping Hobby Card 22 

Romplus Card with keyboard filter 188 

Romplus Card without keyboard filter 168 

SSM AIO Seriel/Perallel I/O Assembled 6 Tested ... 188 

Serial Interface Card 138 

Symtec light Pen Card 214 



MONITORS, DISCS 



Anadex DP8000 


850 


Anadex DPBOOOAP 


860 




818 


Epson TX80-B W Graphics 


799 


MPI 8«T 


960 


NEC Spinwritar #6610 


2896 


Paper Tiger with Graphics 


969 


Silentype with Interface Card 


496 


Leedex Video 100 12 BCrW 


139 


Senyo 9" BtrW 


188 


Color Monitor 11" 


349 


Dyson disks Ipkg 101 


60 


Memorex Ipkg 10) 


40 




30 



computer V\ 
CALL FOR PRICES! 




VISA' 



TO ORDERrPhone orders invited using Visa, Mastercard, or bank wire 
transfers. Visa & MC credit card service charge of 2%. Mail orders may 
send charge card number (include expiration date), cashiers check, 
money order, or personal check (allow 10 business days for personal 
checks to clear). Please include phone number. Include 3% shipping. 



handling, and insurance ($5.00) minimum) in USA. Shipments within 
Calif, add 6% sales tax. Foreign orders include 1% handling-shipped 
freight collect. Foreign orders over $1000 allow 3 weeks extra and 
include $25 license fee. All equipment is in factory cartons with the 
manufacturers warranty. Equipment is subject to price change and avail 
ability. 



MAILTO: 1251 BROADWAY EICAJON CA ., 32Q2I (7iaj 579*0330 





CIRCLE 129 ON READER SERVICE CARD 



NOVEMBER 1980 



121 



Wood Heat, cont'd... 

Lines 130 to 270 

This section of the program sets up the 
constants we will use to determine the 
value of the wood. R is the ratio of the heat 
output per cord to the heat output per 
gallon of fuel oil. The burner efficiencies 
are included. The IE6 in line 160 is the 
million multiplier for the BTU values in 
lines 260 and 270. When the calculations 
are made, each BTU value will be 
multiplied by R to determine the gallon 
equivalent of each cord of wood. This 
gallon equivalent will then be multiplied by 
the cost of burning a gallon of oil to 
determine the value of a cord of wood. 

The electrical cost factor for burning 
oil is P2. The 7.3 is the average current 
draw of the blower, igniter and pump. The 
1 20 is the line voltage. The product of these 
two, which makes up the numerator of the 
fraction, is the power consumed while the 
burner is in operation. The denominator is 
the product of 1.5 and 1000. The 1.5 is the 
gallons per hour burning rate of the oil 
furnace and the 1000 is a conversion from 
watts to kilowatts, making the units of P2 
kilowatt-hours/ gallon. P2 will later be 
multiplied by the cost of electricity to 
determine the electrical cost of burning one 
gallon of oil. 

The conditional in line 
360 is there so that when 
the user assigns no value 
to his time, we do not 
bother with it. 

Later, when all the results are printed, 
the cost per gallon will be multiplied by R 
and the BTU values of the woods to 
determine the gross dollar value of a cord 
of the given species. From this gross value 
will be subtracted the costs of getting the 
wood into the stove. These costs are 
entered by the operator. 

Line 280 

This line zeroes all the variables and is 
the re-entry point for multiple runs of the 
program. 

Lines 290 to 370 

Here we have the main body of the 
program. At this point we get all the 
information from the operator by going to 
each question subroutine. 

The U appearing in lines 330 and 340 
can have values 1, 2 or 3 depending on the 
method the operator chooses for obtaining 
fuelwood. Its value is set in the routine 
starting on line 1450. If the operator buys 
the wood delivered there is no additional 
hauling cost. If the wood is delivered cut 
and split there are no preparation costs. 

The conditional in line 360 is there so 
that when the user assigns no value to his 
time, we do not bother with it, as it will not 
alter the value of the wood. 





SYMBOL REFERENCE TABLE 




Symbol Name 


Purpose 


Line #s 


B 


Array of Btu values of wood 
(millions of Btus per cord) 


240,250,2800 


CI 


Electrical cost per gallon of 
fuel burned 


2760, 2770 


C2 


Non-fuel costs of operating wood 
stove 


2780, 2800 


D9 


Decimal point flag 


1060, 1160, 1170 


El 


Thermal efficiency of oil burner 


140, 160, 2570 


E2 


Thermal efficiency of wood stove 


150, 160, 2560 


E 


Error flag 


530, 910, 1040, 1080, 
1180, 1190, 1220, 1550, 
1710, 1910, 2090, 2260, 
2410 


Fl 


Preparation cost per cord of wood 


280, 620, 1730, 1780, 
1790, 2620, 2630, 2780 


HI 


Transportation cost per cord 


280, 620, 630, 1920, 1960, 
1970, 2600, 2610, 2780 


I 


Dummy variable in FOR... NEXT loops 


190, 250, 1090, 1100, 
2520, 2740, 2750, 2790, 
2800, 2860, 2870, 2890 


01 


Oil price per gallon 


280, 920, 980, 990, 2680, 
2690, 2770 


02 


Total fuel cost of oil per gallon 


2770, 2800 





Btu content of one gallon of fuel oil 


130, 160 


PI 


Cost of electricity from utility per 
kilowatt-hour 


280, 2420, 2480, 2490, 
2580, 2590, 2760 


P2 


Electrical cost multiplier 
kilowatt-hours /gallon 


170, 2760 


Q 


Question mark flag 


540, 920, 1050, 1110, 
1560, 1720, 1920, 2100, 
2270, 2420 


R 


Gallons of oil to cords of wood 
conversion factor 


160, 2800 


S 


Dummy variable used to carry entries 
back to calling routines in numerical 
form 


550, 560, 580, 930, 960 
970, 980, 1230, 1570, 
1750, 1760, 1770, 1780, 
1930, 1940, 1950, 1960, 
2150, 2280, 2290, 2430, 
2460, 2470, 2480 


Tl 


Time spent working up the wood 
(hours per cord) 


280, 2110, 2120, 2130, 
2150, 2160, 2640, 2650, 
2780 


U 


Flag for method of obtaining wood 


280, 330, 340, 620, 630 
650, 670, 1570, 1580, 
1730, 2110, 2120, 2130 


V 


Dollar value of one cord of wood 


2800, 2810, 2820, 2860, 
2870 


Wl 


Value of your time (dollars per hour) 


280, 360, 2270, 2290, 
2300, 2660, 2670, 2780 


E$ 


Dummy string variable used to hold 
the individual characters entered 
by opera tor in S$ 


1100, 1110, 1120, 1130, 
1140, 1150, 1180, 1190, 
1200 


Sl$ 


Holds acceptable characters in string 
from operator 


1070, 1200, 1230 


s$ 


String input from questions posed to 
operator 


510, 890, 1070, 1100, 
1220, 1530, 1690, 1890, 
2070, 2240, 2390 


w$ 


String array holding names of species 
of fuel wood 


180, 190, 2860, 2870 



122 



CREATIVE COMPUTING 




*4*S 






LEARN MATHEMATICS THE FUN WAY! 



°o/) 



Programs that develop mathematical reasoning 

and estimation skill 

Beyond drill and practice! ! 

k\\ ages will enjoy these games that teach 



The Estimation Game (Animated!) 

Cassette 

Diskette 

The Distance Game 

Cassette 

Diskette 



$9.95 
$14.95 



$9.95 
$14.95 



We take Visa or Master Charge (include card# and 
expiration date), checks, money orders. 



EDUCATIONAL 
PROGRAMS 



P.O. 2345 
West Lafayette, IN 47906 
(317)463-4778 



CIRCLE 192 ON READER SERVICE CARD 






»% the 
Dnsoncr 

by David Mullich 






,y 




I^CAl! 



Inspired by the highly 
acclaimed television series, 
your Apple puts you in a 
nightmare 1984 world 
whose rulers seek to break 
you down by an extensive 
array of brainwashing tech- 
niques, while you are armed 
only with your intelligence 
and sense of individuality. 
Can you escape to freedom 
or will you remain forever 
THE PRISONER? 



\ 



We want information . . . " 




Available it computer stores in finer villages everywhere. CA res. add 6% tx. Add $ 1 for shipping. 
EDU-WARE SERVICES. INC. 22035 Burbank #223 • Woodland Hills. CA9I367 

CIRCLE 176 ON READER SERVICE CARD 
NOVEMBER 1980 



WHAT DO YOU GET 

WHEN YOI CROSS 

APPLES WITH JOYSTICKS? 




JOYPLES! 



The Dual Joystick system with the most appro- 
priate shape for the APPLE M* computer. 

Joyples come ready to plug in to your APPLE II 
Game I/O Port. 

Each Joyple is a delicious red, hard plastic 
apple, with its own pushbutton and multi- 
direction joystick. 

Get all the versatility & fun of a dual joystick 
system for only $39.95. 

Joyples let you create exciting action games for 
1 or 2 players. Here are a few that we offer: 

Charge The Net, Tennis — Joyples let you 

move your paddles in all directions $12.95 

Tank Assault — You control the speed & 
direction to attack your enemy $12.95 



r 



Please send Set(s) (2 Joyples/Set) of 

Joyples Joysticks @$39.95/set. 

□ CHARGE THE NET, TENNIS $12.95 

□ TANK ASSAULT $12.95 

□ BOTH GAMES $23.95 

Specify Disk □ or Tape D. 

Add 5% for postage/handling (15% foreign) 

Mass. res. add 5% tax. 

Send check or money order to: 

NILONEL MFG. 

5 Stevens Rd. 
Worcester, MA. 01603 



Dealer Inquiries Welcome 

Apple II is a Trademark of Apple Computer, Inc. 



CIRCLE 203 ON READER SERVICE CARD 



123 



Wood Heat, cont'd... 

Lines 380 to 710 

This section of the program is the 
menu. After the results of the first pass 
have been printed, control falls through to 
the menu. The choices are printed on the 
video screen and the user may choose 
whatever option is required. This feature 
of the program is essential if the user 
wishes to compare costs when market 
conditions change. An analysis of this 
section will show many of the principles of 
friendly programming. 

Line 380 clears the video display (this 
is done at the beginning of each section to 
catch the attention of the operator). Lines 
390 to 490 print the menu on the screen. 
Line 500 clears the keyboard buffer in case 
the user has been playing with the keys 
between operations. 

Line 5 1 gets the user's choice in string 
form. The string is sent to the conversion 
routine which deletes unnecessary charac- 
ters and checks for numerical entry. 

Line 530 checks to see if the error flag 
has been set by the conversion routine 
(more about this later). If the error flag is 
set we go back to the menu for another try. 

Line 540 checks for question mark 
entry (Q is the question mark flag). The 
question mark is not a reasonable response 
to the menu so we do an error message and 
go back to the menu display. 

Lines 550 and 560 check to see that the 
response was within the permitted range. If 
it is not we tell the operator and go back for 
another try. If we are within the range we 
go off to the routines which modify the 
variables. 

The subroutines which request the 
entry of variables work similarly. The 
question is printed on the screen, the 
answer is accepted as a string, and the 
string is converted to a number or a flag is 
set. If the Q flag is set we supply a default 
value for the variable. If the error flag is 
set, an error message is printed and then a 
new response is requested. When there is 
no flag set we check for the proper decimal 
place in the number, correct it if necessary, 
and then print the result on the screen. Line 
990 shows how the number is printed on 
the screen after processing. The %$ stuff is 
a format statement which will cause the 
variable to be printed in a field right 
justified, eight characters wide with three 
places after the decimal point and a dollar 
sign to the left of the number. 

String Conversion Routine, 
Lines 1040 to 1240 

Lines 1070 and 1080 check to see if 
just a carriage return was pressed. If so, the 
error flag is set and control is passed to the 
error message routine. 

The FOR . . . NEXT loop does most 
of the work in this routine. Each character 
in the string is checked for validity. A 
question mark sets the Q flag and returns 
control immediately. The EXIT in line 
1 1 10 clears the FOR . . . NEXT stuff from 
the stack when the loop is terminated early. 



Dollar signs, minus signs, blanks and all 
but the first decimal place are discarded. 

The decimal-point problem was 
brought to my attention by a nine-year-old 
who was testing the program. He had two 
decimal points in one of his entries and got 
an interpreter error message on line 1230 
because the string could not be converted 
with two decimal points in it. 

Lines 1 180 and 1 190 set the error flag 
if the character is not numerical. Once 
again we use the EXIT to clear the stack. 
Line 1200 rebuilds the string with accept- 
able characters. 

If the rebuilt string is null, line 1220 
detects the condition and sets the error 
flag. If the entry has passed all the tests, it is 
converted to a numerical variable and 
returned to the calling routine. We must 
test for a null string in line 1 220 because it 



I expected that most of 
the visitors would view 
not only the computer 
but even the keyboard as 
an exotic device. The 
program therefore had to 
be friendly. 



is possible that someone might fill the 
string with spaces. If the string is full of 
decimal points we still have a problem, and 
if I were to write the program over, I might 
strip the decimal points in this routine and 
correct for it in the calling routine. There 
were no problems with this during its use at 
the energy fair. 

The printout routine is located 
beginning at line 2520. If you recall we 
opened file channel 3 for the printer back 
in line 1 20 and now whenever we PRINT: 3 
we send data through this channel to the 
printer. If we wish to display data on the 
screen we just use the PRINT without the 
colon. Lines 2550 through 2710 print out 
the value of the variables used in the 
calculations so that each printout of wood 
values will have with it the values of the 
variables used in its calculation. When 
referring to the printouts at a later time, we 
will know what information was used to 
obtain them. 



Lines 2760 through 2810 perform the 
calculations of wood value. Line 2760 
calculates the cost of electricity used to 
burn one gallon of fuel oil. PI is the cost of 
one kilowatt-hour of electricity and P2 is 
the number of kilowatt-hours/ gallon of 
electrical energy consumer per gallon of oil 
burned. 

Line 2770 calculates the true cost of 
one gallon of fuel oil by adding the 
purchase price of the oil to the electrical 
cost of burning it. 

Line 2780 calculates the cost of 
burning one cord of firewood. C2 is the 
sum of the hauling cost (HI), the 
preparation cost (Fl), and the value of the 
labor involved (T1*W1). 

Line 2800 calculates the value of a 
cord of each species of interest. The value is 
determined by multiplying the cost per 
gallon of oil (02) times the BTU -efficiency 
ratio (R) times the BTU content of one 
cord of the species of interest. From this 
product is subtracted the cost of getting the 
wood into the stove (C2). The result is the 
actual dollar value of a cord of that species 
given all the costs entered by the operator. 
It is the price you can afford to pay for 
firewood and come out even. If you pay 
less than the calculated value for wood you 
are better off heating with wood. If you pay 
more you should heat with oil. 

Conclusion 

I hope I have shown here that Basic 
can be used to create structured, modular 
programs that are in some ways superior to 
those created by the more naturally 
structured languages. Admittedly, pro- 
grams in those grander languages, Pascal 
and C, can be easy to decipher if the 
function names are well chosen to reflect 
the nature of the function being called. But 
if the reader of the program wants to know 
exactly how the function works he will 
have a difficult time finding it in a long 
listing. The use of remarks in Basic enables 
the reader to determine the purpose of the 
subroutine, and the line number associated 
with the GOSUB makes it easy to locate 
the routine when more detailed informa- 
tion is required. D 



10 REM 

20 

30 

40 

50 

60 

70 

80 

90 

100 

110 

120 

130 

140 

150 

160 



DETERMINE VALUE OF WQUD AS HEATING FUEL 



A, BRUNELLI 
NHVTC, BERLIN 
MILAN RD. 
BERLIN, NH 03570 



PROGRAM TO 
REM 
REM 
REM 
REM 
REM 
REM 
REM 

REM 

REM 

file:3,list 

0=140000\rem btu content of one gal ♦ 
e1=0*65\rem efficiency of oil burner 
e2=0.50\rem efficiency of air tight uood stove 
r=e2*1e6/ce1*0)\rem conversion factor gal* 'to cord 



WRITTEN IN 
10/20/7? 



POLYMORPHIC: 



BAS 



IC VER. BOS 



♦2 FUEL OIL 



124 



CREATIVE COMPUTING 




computer 
products, inc. 



11542-1 KNOTT ST. 

GARDEN GROVE, 

CA 92641 

(800)854-6411 

(714)891-2663 



SHUQART 

SA 801 R 

BARE-DRIVE 

CALL FOR PRICE 
AND DELIVERY 



RS-232 CONNECTORS 

1-9 10-24 25-99 

DB25P 3.10 2.90 2.75 
DB25S 3.80 3.65 3.50 



ADD-ON jg + + ~ j^ 200NS 
MEMORY 4llO S 250NS 

(16K x 1 DYNAMIC RAM) 

APPLE, TRS-80, HEATH, EXIDY, ETC. 

8 for $45. 00 

OR 

16/$82. 00 32/$155. 00 



VIDEO MONITORS 

SANYO 9" $175. 00 
B&W 

SANY0 12" $240. 00 
B&W 

LEEDEX12" $135. 00 
B&W 



MICROBYTE 

S-100 PRODUCTS 

• Z-80/I-O BOARD 

► FLOPPY DISC 
CONTROLLERS 
SINGLE/DBL. DENSITY 

>64K DYNAMIC RAM BD. 

MULTIPORT I/O BD. 

»32K STATIC RAM BD. 

•9 & 19 SLOT MOTHER BD. 

ALL BOARDS A & T 

CALL FOR PRICE & 
DELIVERY 



ATARI MODEL #800 
•NEW 16K VERSION 
•8K BASIC ROM 
•INVITATION TO PROGRAMMING 
•TV SWITCH BOX/PWR SUPPLY 
•BASIC MANUAL & LANGUAGE 

CALL FOR PRICE 



ANADEX PRINTERS 

MODEL #8000 $895.00 

MODEL #8000 (APPLE) $895.00 
MODEL #DP9500 $1525.00 

MODEL #DP9501 $1525.00 

FEATURES ON #8000 

•80 COLUMNS, 112 CPS 
• BI-DIRECTIONAL 
•SPROCKET FEED 
•9x7 CHARACTER FONT 



WE ARE NOW A 
DISTRIBUTOR OF 

S.D. SYSTEMS 

EXPANDORAM I 

EXPANDORAM II 

VERSAFLOPPY 

SBC100/SBC200 

VDB 8024 VIDEO BOARD 

PROM-100 PROGRAMMER 

CALL FOR PRICE & DELIVERY 



2114L-3(300NS) 

1-16 $4.25 

17-49 $4.00 

50-99 $3.75 

100 Up $3.50 



QUME DATATRAK 8 

DOUBLE-SIDED BARE DRIVES 
•DOUBLE-SIDED/SGL OR DBL DENSITY 
• 154 TRACKS, 1.2 MBYTES/DISK 
•3MS. ACCESS TIME TRACK TO TRACK 

CALL FOR PRICE A DELIVERY 



LO-PRO SOLDERTAIL SOCKETS 



14 PIN 

16 PIN 
18 PIN 
20 PIN 
24 PIN 
28 PIN 
40 PIN 



1-99 
.10 
.12 
.15 
.23 
.26 
.30 
.42 



2708's 

(450NS) 

$7.50 ea. 

8/$56. 00 



5257-3L 

4Kx1 STATIC 
RAM CHIP 

$5.25 



2716's 

5 VOLT-450NS 



CAPS 

-1 @ 

12 VOLTS 

CERAMIC 

11c ea. 

OR 

100/$10. 00 



100- Up 
.09 
.11 
.13 
.21 
.24 
.28 
.40 



VERBATIM 

DISKETTES 
MD 525-01 



»! 



5 1 /4" SOFT-SECTOR 

(box of io> $29.95 



$13. 



00 



ea. 



Z-80A 

(NEC 780C-1) 

CPU CHIP 

$10. 00 



ea. 



ORDERING INFO 

Name, Address, Phone 

Ship by: UPS or Mail 

Shipping Charges, Add $2 up to (5) lbs. 

$25.00 Minimum Order 



TERMS 

We Accept Cash, Check, Money Order, 

Visa & Master Charge. 

C.O.D.'s on Approval. (U.S. Funds Only) 

Tax: 6% California Residents 




CIRCLE 109 ON READER SERVICE CARD 



The world's most popular microcomputer, with 16K of 
memory and Level 1 1 basic for only $685 , complete with 
full 90 day Radio Shack warranty. We accept check, 
money order orphoneorders with Visa orMasterCharge. 
(Shipping costs added to charge orders). 
Disk drives, printers, 

peripherals, software 
and games . . . you 
name it, we've got it 
(Both Radio Shack & 
other brands). Write 
or call for our 
complete price list. 



c*s 

ELECTRONICS HART 

Ltd. 




AUTHORIZED 
DEALERSHIP 



Radio /haek 



32E.MainStreet#MilanMichigan48160#(313)439-1400 

CIRCLE 119 ON READER SERVICE CARD 



COLOR 

SOFTWARE 

Colorful Programs for Apple II, Atari, and Tl 99/4 



DRY WELL: Strategy game of oil exploration. Discover the 
pattern of oil deposits and maximize profits. $15. Apple II 
24K, ROM Applesoft; Atari 16K; Tl 99/4 

ROADRACE: High-res. display shows view from race car. 1 
or 2 players race around 2.25 mi. course. $15. Apple II; Atari 
16K; 

3-D STARTREK: Discover new planets, fight Klingons in 3- 
dimensional galaxy. High-res. color. $15. Apple II 32K; Atari 
24K; Tl 99/4 

NUCLEAR REACTOR: Dynamic model of nuclear power 
plant in operation. Control reactor and power demands on 
the plant. $15 Apple II; Atari 16K;TI 99/4 

BLACKJACK: Popular card game in high-res. color. 1 to 3 
players. Computer deals and keeps score. Atari 16K; Tl 
99/4 $15. 

MAJOR LEAGUE BASEBALL. Strategy game based on 
1979 season. Manage your favorite teams. $25. Apple II 
with 48K RAM, ROM Applesoft, and one disk. 

All programs except Baseball furnished on cassette. 
Apple programs available on disk for $2 per order. 

COLOR SOFTWARE 

5410 W. 20th St., Indianapolis, IN 46224 



CIRCLE 133 ON READER SERVICE CARD 



QbDysan 

^CORPORATION 
Call toll FREE (800) 235-4137 

PACIFIC EXCHANGES 



MEMOREX 

DISKETTES 

Call toll FREE (800)2354137 

PACIFIC EXCHANGES 



DISKETTES 

Call toU FREE (800) 2354137 

PACIFIC EXCHANGES 

BASF 

DISKETTES 

Call toU FREE (800)2354137 

PACIFIC EXCHANGE S 

CIRCLE 204 ON READER SERVICE CARD 



RGJAnC€ 

America's Most Versatile 

Line of Customized 
Audio Visual Packaging 

Audio Cassette 
Albums 





CA2-2N 



CA2LL-6 
Corrugated Mailers 





M-1 

For complete catalog write or phone 

ReuAnc€ p,a8,ics4 



M-2 



Packaging Division 



108-18 Queens Boulevard 

Forest Hills, N.Y. 11375 (212) 544-9800 



CIRCLE 233 ON READER SERVICE CARD 



Wood Heat, cont'd... 



170 
180 
190 
200 
210 
220 
230 
240 
250 
260 
270 
280 
290 
300 
310 
320 
330 
340 
350 
360 
370 
380 



P2=7.3*120/1500\REM ELECTRICAL COST MULTIPLIER 



DIM U$( 15: 15 )\REM * HOLD SPECIES NAMES 

FOR 1 = 1 TO 15\READ U$( I )\NEXT 

DATA"Hophornbeam", "Beech" >"Su3ar maple" 9" Red oak"," Yellow Birch 1 

DATA"White ash" , "Red Maple" » "White birch" r" Elm" ," Red Spruce" 

DATA "Pin cherry" » "Poplar" r " Balsam fir", "White Pine" 

DATA "Basswood" 

DIM B(15)\REM BTU/C0RD OF SPECIES ABOVE IN MILLIONS 

FOR 1 = 1 TO 15NREAD B< I )\NEXT 

DATA 24. 7 f 21. 8 » 21. 8* 21. 7 » 21. 3 t20il9.lt 18. 2 

DATA 17 ♦ 7t 15f14.2f 14. If 13. 5f13.3f 12.6 

UfT1fW1fP1f01fF1fH1=0 

G0SUB 720\REM * EXPLAIN PROGRAM AND METHOD OF DATA ENTRY 

G0SUB 850XREM * GET CURRENT FUEL COST 

G0SUB 2350NREM * GET COST OF ELECTRICITY 

GCSUB 1450NREM * GET METHOD OF OBTAINING WOOD 

IF U=3 THEN G0SUB 1640XREM * GET HAULING COST 

IF U>1 THEN G0SUB 1630\REM * GET PREP. COST 

GOSUB 2200XREM * GET VALUE OF TIME 

IF W1 = THEN GOSUB 2110 ELSE GOSUB 2020NREM * 

GOSUB 2520\REM * PRINT RESULTS 

PRINT CHR$( 12) 
390PRINT TAB< 10 )t"What would you like to change ?' 
400PRINT"#2 fuel oil cost" t TAB( 35 )f m 1" 
410PRINT"Cost of electricity" fTAB< 35 )f"2" 
420PRINT"Method of obtaining wood" fTAB( 35 )f"3" 
430PRINT"Haulins : cost" >TAB< 35 )»"4" 
440PRINT"PreP3ration cost" t TAB( 35 >f"5" 
450PRINT"Time taken" fTAB< 35 ),"6 n 
460PRINT"Value of time",TAB< 
470PRINT"Printout" »TAB( 35 )f"8" 
480PRINT"Run program 32a in" fTAB< 35 )?" 9" 



TIME SPENT 



35 )f"7" 



4?0PRINT"Ter minate program" fTABC 35 )»"10 M 
500 PRINT CHR$( 24 )\REM * CLEAR KEYBOARD BUFFER 

choice ? "fS* 



PRINT CHR$( 24 )\REM * 
S10PRINT\INPUT"Number of 



520 
530 
540 
550 
560 
570 
580 
590 
600 
610 
620 
630 
640 
650 
660 
670 



GOSUB 1040\REM * CONVERT STRING 

IF E=l THEN 500 

IF 0=1 THEN 570 

S=INT(S) 

IF S>0 THEN IF S<11 THEN 580 

GOSUB 1250XGOSUB 1380\GOTO 380 

ON S GOTO 590»600>610>650»670f690t700»710*280»2920 

GOSUB 850XG0T0 380XREM * NEW FUEL PRICE 

GOSUB 2350XGOTO 380XREM * NEW ELECT. PRICE 



GOSUB 

IF 

IF 



REQUIRES OTHER CHANGES 



GOSUB 



u<- 



IF uw 
680PRINT"* 
690 GOSUB 
700 GOSUB 
710 GOSUB 
720 PRINT 



380 



1450XREM * NEW METHOD OF GETTING WOOD. 
U=l THEN H1=0\F1=0\GOSUB 2020XGOTO 380 
U=2 THEN H1=0\GOSUB 1630XG0SUB 2020XGOTO 380 

1840\GOSUB 1630NGOSUB 2020XGOTO 380 
IF U=3 THEN 660 
GOSUB 1840XG0T0 380 

1 THEN GOSUB 1630XG0T0 380 
YOU DON'T HAVE ANY PREP COST *"\G0SUB 1370NGOTO 

2020XGOTO 380 

2200XG0T0 380 

2520XGOTO 380 

CHR$( 12) 

730PRINT TABC 8 )t"This program will help you determine the economy" 
740PRINT"of heating with wood. I will ask you some Questions about" 
750PRINT"your energy costs and use your answers to determine the dollar" 
760PRINT" values of cords of various wood species." 

770PRINTTAB< 5 )t "Please enter your answers by typing them on the Keyboard. 
780PRINT"If you make an error press the key marked 'DELETE' on" 
790PRINT" the risiht side of the keyboard. If you do not know the" 
800PRINT"answer to a Question enter 3 Question mark (?)." 
810PRINT"To conclude your entry press the Key marked 'RETURN'" 
820PRINT"on the risiht side of the keyboard." 
830 GOSUB 1370XREM * WAIT FOR KEYPRESS 
840 RETURN 
850 PRINT CHR$( 12) 

860PRINT" Please enter the price you currently 
870PRINT"#2 fuel oil delivered to your home." 
880 PRINT CHR$< 24 )\REM * CLEAR KEYBOARD BUFFER 



pay for 



890 
900 
910 
920 
930 



PRINTMNPUT" Current oil 
GOSUB 1040XREM * CONVERT 



price (cents/Sal 
STRING 



) ? 



S* 



IF E=l THEN 880 

IF G=l THEN Ol=0.89\GOTO 990 

IF SO0 THEN 960 
940PRINT" If oil were free we wouldn't be here today. 
950 GOTO 880 

960 IF S<10 THEN S=S*100\GOTO 960XREM 
970 IF S:: 1000 THEN S=S/10\GOTO 970XREM 



980 01=S/100\REM * CONVERT 

990PRINT"Fuel cost", TABC 30 

1000 GOSUB 1370XREM * WAIT 

1010 RETURN 

1020 REM 

1030 REM * CHAR TO NUM CONVERSION 

1040 E=0\REM * ERROR FLAG FOR NON 

1050 Q=0\REM * QUESTION MARK FLAG 

1060 D9==0\REM * FLAG FOR * OF DECIMAL 

1070 L = LEN( S$ )\S1$ = ""\REM * CLEAR 

1080 IF L=0 THEN E=1\RETURN 



126 



TO DOLLARS 
tZ$8F3t01t"/3al. 
FOR KEYPRESS 



ROUTINE 
NUMERICAL 



* CORRECT FOR DOLLAR ENTRY 
THERE ARE LIMITS 



CHAR 



POINTS 



31$ 



CREATIVE COMPUTING 



1090 FOR 1=1 TO L 

1100 E$=MID$(S$tI>I ) 

1110 IF Ef = ,, ? H THEN Q=1\EXIT 1240 

1120 IF E*="$" THEN 1210\REM * IGNORE $,-, SPACE 

1130 IF E$="-" THEN 1210 

1140 IF E*^" u THEN 1210 

1150 IF E*<>" ♦ " THEN 1180 

1160 IF D?=l THEN 1210\REM * IGNORE EXTRA DEC. POINTS 

1170 D9^1\G0T0 1200XREM * INCLUDE ONLY ONE DEC. POINT 

1180 IF E$< ,, 0" THEN E=1\EXIT 1250 

1190 IF E*> ,, 9" THEN E=1\EXIT 1250 

1200 S1*=S1*+E* 

1210 NEXT 

1220 IF LEN(S$)=0 THEN E=l\GOTO 1250 

1230 S=VAL< SI* ) 

1240 RETURN 

1250 ON RNIK5) GOTO 1260 r 1280 r 1300 » 1320 > 1340 

1260PRINT" * I'm not that stupid, "t 

1270 GOTO 1350 

1280PRINT" * DOES NOT COMPUTE. "» 

1290 GOTO 1350 

1300PRINT" * HUH ?? m f 

1310GOTO 1350 

1320PRINT"Je ne comprends pas H » 

1330 GOTO 1350 

1340PRINT"! sincerely doubt thst is what you intended. " r 

1350 PRINT" TRY AGAIN*" 

1360 RETURN 

1370PRINT 

1380 PRINT TAB(8)»"Press 'RETURN' to continue..." 

1390 PRINT CHR$( 24 )\REM * CLEAR INPUT BUFFER 

1400 IF INP(0)=0 THEN 1400 

1410 PRIHT CHR*(24)\ REM * CLEAR INPUT BUFFER 

1420 RETURN 

1430 REM * 

1440 REM * ROUTINE TO DETERMINE METHOD OF OBTAINING FUEL WOOD 

1450 PRINT CHR$( 12) 

1460PRINT" Choose the method below which is closest to the" 

1470PRINT" method you use to obtain firewood." 

1480 PRINT 

1490 PRINT"Delivered cut» split and stacKed 1" 

1500 PRINT"Delivered unsplit ♦♦ 2" 

1510,PRINT"Fell trees and haul loss... 3" 

1520 PRINT CHR$(24)\REM * CLEAR KEYBOARD BUFFER 

1530 PRINT\INPUT"Your choice ? "fS$ 

1540 GOSUB 1040 

1550 IF E=l THEN 1520 

1560 IF Q=l THEN 1590 

1570 U=INT(S+.5) 

1580 IF U>0 THEN IF U<4 THEN 1600 

1590 GOSUB 1250\G0T0 1520 

1600 RETURN 

1610 REM 

1620 REM * PREPARATION COSTS PER CORD 

1630 PRINT CHR$( 12 ) 

1640PRINT" Please enter the cost of worKinS up one cord of firewood" 

1650PRINT"into stove sized Pieces. Please include the costs of aas*" 

1660PRINT"oi.l » files* chains* saw> mauls? weddesr rental of power" 

1670PRINT"splitter and other out of PocKet costs for preparing the wood." 

1680 PRINT CHR*( 24 )\REM * CLEAR KEYBOARD BUFFER 

1690PRINTMNPUT" Preparation costs ( dollsrs/cord ) ? " » S$ 

1700 GOSUB 1040 

1710 IF E=l THEN 1680 

1720 IF Q=0 THEN 1750 

1730 IF U=2 THEN Fl=2.25 ELSE Fl=3 

1740 GOTO 1790 

1750 IF S=0 THEN GOSUB 1250\G0T0 1680 

1760 IF S<1 THEN S=S*10\G0TO 1760 \ REM * TOO CHEAP 

1770 IF S>100 THEN S=S/10\GOTO 1770XREM * TOO EXPENSIVE 

1780 F1=S 

1790PRINT\PRINT"Preparation costs" »TAB( 20 )>%$8F2*F1 

1800 GOSUB 1370 

1810 RETURN 

1820 REM 

1830 REM * ROUTINE TO DETERMINE HAULING COST 

1840 PRINT CHR$( 12) 

1850PRINT" Please enter the out of pocket costs of transpor tins!" 

1860PRINT"one cord of wood to its final location. Include the costs" 

1870PRINT"of gas* oil* and trucK depreciation or rental." 

1880 PRINT CHRSC 24 )\REM * CLEAR KEYBOARD BUFFER 

1890PRINT\INPUT"Transportation cost (dollars/cord) ? "»S$ 

1900 GOSUB 1040 

1910 IF E=l THEN 1880 

1920 IF G=:l THEN H1 = 15\G0T0 1970 

1930 IF S=0 THEN I960 

1940 IF S<1 THEN S=S#10\G0TO 1940 

1950 IF S>100 THEN S=S/10\GOTO 1950 

1960 H1=S 

1970PRINT\PRINT"Transportation cost" *TAB( 20 )»Zt»8F2,Hl 

1980 GOSUB 1370 

1990 RETURN 

2000 REM 

2010 REM * SUBROUTINE TO DETERMINE TIME SPENT 

2020 PRINT CHR$( 12 ) 

127 




SuperBrain " 32K . $2495 

64K RAM, List $3345 $2695 

64K Quad, List $3995 $3395 

NORTH STAR Horizon I® 

16K D.D. Kit $1259 

32KD.D. Kit $1579 

32K Assembled, List $2695 .... $2149 

Horizon 2 32K DD, Assm., $3095 $2439 
32K QD, Assm., List $3595 .... $2859 




CROMEMCO Z-2, List $995 ... $ 829 

System 2, 64K, List $3990 $3179 

System 3, 64K, List $6990 $5479 

ATARI® 400, List $630 $ 489 

800, List $1080 $ 839 

TI-99/4, List $1 150 $ 985 



DISK SYSTEMS 

THINKER TOYS" Discus 2D 

Dual Discus 2D 

Discus 2 + 2, List $1549 



$ 939 
$1559 
$1288 



PRINTERS & TERMINALS 

PAPER TIGER IDS 440 $ 849 

with Graphics Option $ 949 

CENTRONICS 730-1, List $995 . $ 639 
737, List $995 $ 849 

T.I. 810 $1575 

INTERTUBE II, List $995 $ 729 

PERKIN ELMER Bantam 550 .. $ 789 

TELEVIDEO 912C $779 

920C $ 839 

HAZELTINE 1420 $ 839 

1500 $ 879 

SOROC 120 $ 745 



FLOPPY DISKS SPECIAL 

SVa" Box of 10 ONLY $29.95 

(specify TRS-80, North Star, SuperBrain, etc.) 



Most items in stock for immediate delivery Factory sealed cartons, 
w/full factory warranty NYS residents add appropriate sales tax 
Prices do not include shipping VISA and Master Charge add 3% 
COD orders require 25% deposit. Prices sub|ect to change without 
notice 

Computers 
Wholesale 

P.O. Box 144 Camillus, NY 13031 

(315) 472-2582 





CIRCLE 132 ON READER SERVICE CARD 



INTRODUCING 

for the 



APPLE II 



"APPLE — SIMON SEZ" 




Challenge your wits by testing your memory 
and concentration. Repeat exactly the 
sequence of colors and sounds randomly 
generated by APPLE— SIMON SEZ and you 
win, or program your own sequence of 
colors and sounds to baffle your friends. Play 
with both colors and sounds or just colors or 
just sounds. If you lose, APPLE— SIMON 
SEZ'S humilating "razz" lets you and 
everyone around know. 

Six game variations for your enjoyment. 

Now available on cassette at the low 
introductory price of ONLY $9.95, please 
add $.75 shipping and handling. 

SEND CHECK OR MONEY ORDER TO: 

BARTON ENTERPRISES, INC. 
1604 MARSH LANE 
CARROLLTON, TEXAS 75006 

* APPLE II is a registered trademark 
of Apple Computer, Inc. 
CIRCLE 111 ON READER SERVICE CARD 



A CompuBridge* A 
~ Contract Bridge Series^ 
„ Programs That Work 
▼ Presently available for JL 
APPLE II ^ 

(No special hardware needed) 

Elementary Course Cassette 
For16Kor32K $19.95 

Complete Course Cassette 

For16Kor32K $29.95 

Complete Course Diskette 
For48K $39.95 

Each court* Includes a series off pro- 
grammed lessons plus the unique 
QUIZMAKER which deals random 
hands lor exercises on point count, 
opening bids, responses and reblds, 
than checks your anawars and 
quizzes you or supplies tha correct 
answer. Tha complete course In- 
cludes popular conventions such at 
Stayman and Jacoby Transfers. 

Available from your Apple Dealer or 
CompuBrldfle Division, Barclay 
Bridge, Port Cheater, N.Y. 10573. 



Please 
ffor 



send 
16K _ 



_32K 48K 

Check Enclosed or charge to 
VISA MC Card No. 



Name 



Address 



N.Y. Residents add Salaa Tax 
CIRCLE 117 ON READER SERVICE CARD 



Wood Heat, cont'd... 



2030PRINT" Please enter the number of hours you spend handling" 
2040PRINT"each cord of wood* Be sure to include time spent EJettins" 
2050PRINT" the wood into the stove and clesnind the stove and flue." 
2060 PRINT CHR$( 24 )\REM * CLEAR KEYBOARD BUFFER 



20 70 
2080 
2090 
2100 
2110 
2120 
2130 
2140 
2150 



PRINT\INPUT"Time spent 
G0SUB 1040 



(hours/cord) ? 



1 o 



% 



IF 
IF 
IF 
IF 
IF 



THEN 
THEN 
THEN 
THEN 
THEN 



2060 

2150 

T1=2\REM 

T1=5\REM 

T1=8\REM 



* 



BUYS 
BUYS 
CUTS 



CUT AND SPLIT 

IN 4' OR 3' LENGTHS 

THE TREES 



E=l 

0=0 

U=l 

U=2 

U=3 
GOTO 2160 
T1=S 

2160PRINT\PRINT"Hours per cord* tTABC 20 >»Z7F2rTl 

2170 GOSUB 1370 
2180 RETURN 

2190REM * ROUTINE TO DETERMINE VALUE OF TIME 
2200 PRINT CHR$( 12) 

2210 PRINT" Please enter what you consider to be 
2220PRINT" of your time spent dealing with firewood." 
2230 PRINT CHR$C24 >\REM * CLEAR KEYBOARD BUFFER 
PRINT\INPUT"Value of time (dollars/hour) ? 



the value' 



2240 
2250 
2260 
2270 
2280 
2290 



GOSUB 1040 



tb' 



2320 
2330 
2340 
2350 



IF E=l THEN 2230 

IF Q=l THEN U1=4\G0T0 2300\REM * DEFAULT VALUE OF TIME 

IF S>100 THEN S=S/10\GOTO 2280 

2300PRINT\PRINT"Valoa of time" ,TAB( 20 ),Z$6F2*U1 
2310 GOSUB 1370 

RETURN 

REM 

REM* ROUTINE TO DETERMINE 

PRINT CHR$( 12 ) 
2360PRINT" Please type in 
2370PR INT "electricity." 
2380 PRINT CHR$( 24 )\REM * CLEAR KEYBOARD BUFFER 

PRINT\INPUT"Cost of electricity < cer. ts/KUhr ) 

GOSUB 1040 

IF E=l THEN 2380 

IF 0=1 THEN PI = .069\GOTQ 2490\REM * DEFAULT COST (N.H.) 

IF SO0 THEN 2460 

PRINT"If electricity were free you wouldn't he3t with wood." 

GOTO 2380 

IF S<1 THEN S=S*10\GOT0 2460 

IF S>100 THEN S=S/10\GOTO 2470 



ELECTRICITY COST 

the price you now pay for" 



S$ 



Pl«o 



<V100 



F ll»ntr ir\ t.u COS * " - TARC r >(\ \ . VtRfl , P i . » /k-mk~ " 



X" 
X" 



2390 
2400 
2410 
2420 
2430 
2440 
2450 
2460 
2470 
2480 

2490PRINTXPRINT 
2500 GOSUB 1370 
2510 RETURN 

2520 FOR 1*1 TO 4XPRINT : 3, CHR*< 10 ANEXT 
2530PRINT CHR$( 12) 

2540 PRINT:3»TAB( 10 )>"ENERGY FAIR Oct. 20,197?" 
2550 PRINT:3,CHR$( 10 > 

2560PRINT:3jr"Eff iciency of wood stove" rTAB( 35 ) »E2*100 r " 
2570PRINT:3»"Eff iciency of oil burner " , TAB( 35 ) »E1*100 » " 
2580PRINT:3»"Cost of electr ici ty " , TABC 30 ) >%$8F3»P1 , "/KWhr " 
2590PRINT"Cost of electr ici ty" t TAB( 30 >»%$8F3,P1 , "/KWhr " 
2600PRINT:3>"Transport3tion cost" » TAB( 30 ) >%$3F2,H1 , " /cord" 
2610PRINT"Transportation cost" rTABC 30 )>%$SF2*H1 , "/cord" 
2620PRINT:3T"Prepar3tion cost" , TABC 30 >rZ$ 8F2>F1 , "/cord" 
2630PRINT"Preparation cost" ,TAB( 30 )»%$8F2>F1 , " /cor d" 
2640PRINT:3r"Time spent" tTABC 30 >tZ8F2»Tlf "Hrs/cord" 
2650PRINT"Time spen t" ,TAB< 30 ) ,%8F2 »T1 , "Hrs/cord" 
2660PRINT:3s- ,, Value of time" , TABC 30 ) ,%$8F2>W1 , "/hour " 
2670PRINT"Value of time" , TAB( 30 ) »%*8F2rWl , "/hour " 
2630PRINT:3r"Cost of fuel oi 1" , TAB( 30 ) ,%$8F3 >01 , "/aal . " 
26S'0PRINT M Cost of fuel oil" , TABC 30 ) »Z$8F3 » 01 , "/3al . " 
2700PRINT:3tCHR$C 10 ) 
2710 PRINT 

2720 PRINT:3»"Uood type" , TABC 30 )»" Value of one cord ( 
2730PRINT"Uood type" ,TABC 30 >» "Value of one cord" 
2740FOR 1 = 1 TO 48XPRINT : 3, " -" f\NEXT\PRINT 8 3,CHR$C 1 3 ) 
2750F0R 1=1 TO 48XPRINT »-■ ANEXTNPRINT 

2760 C1=P1*P2\REM * COST OF ELECTRICITY TO RUN OIL BURNER 
02=01+C1 

C2=H1+F1+T1*W1\REM * COSTS OF OPERATION FOR WOOD HEAT 
FOR 1=1 TO 15 

V=02»R*B< I >-C2\REM * VALUE <-F ONE CORD OF WOOD 

V=INT( V+.5) 

IF V>-100 THEN 2860 

PRINT :3» "You would Jose Quite 



X Moisture >■ 



2770 
2780 
2790 
2800 
2310 
2820 
2830 



!840PRINT"You would lose Quite a bundle 
2850 EXIT 2890 

2860 PRINT:3,U$( I ), TABC 33 )»Z$8I,V 
2870PRINT W$( I ) ,TAB( 33 ) ,%$8I , V 
2880 NEXT 

2890 FOR 1 = 1 TO 4XPRINT : 3,CHRM 10 )\NEXT 
2900GOSUB 1370 
2910 RETURN 
2920 PRINT CHR$C 12.) 
2930 PRINT\PRINT\PRINT 
2940PRINT"Have a mild winter , 



a bundle " 



128 



CREATIVE COMPUTING 



ENERGY FAIR Oct. 20 » 1979 



Efficiency of wood stove 
Efficiency of oil burner- 
Cost of electricity 
Transportation cost 
Preparation cost 
Time spent 
Value of time 
Co<v>t of fuel oil 



Wood type 



50 7. 
65 % 
$.070/KWhr 
$.00/cord 
*♦ 00 /cord 
3.00Hrs/cord 
$3 .50/hour 
♦♦960/dal. 

Value of one cord 
( 20 7. Moisture ) 



Hophornbeam 
Beech 

Sugar maple 
Red oak 
Yellow Birch 
White ash 
Red Maple 
White birch 
Elm 

Red Spruce 
Fin cherry 
Poplar 
Balsam fir 
White pine 
Bassuood 



ENERGY FAIR Oct. 

Efficiency of wood stove 
Efficiency of oil burner 
Cost of electricity 
Transportation cost 
Preparation cost 
Time spent 
Value of time 



Cosit of fuel oil 



Wood type 



♦ 125 

$109 

$109 

$109 

$107 

$99 

$95 

$90 

$87 

$72 

$68 

$67 

$64 

$63 

$59 



20-1979 

50 % 

65 % 

$.070/KWhr 

$,00/cord 

$2.50/cord 

8.00Hrs/cord 
$3 .50/hour 
$.960/3al. 



Value of one cord 
( 20 % Moisture ) 



Hophornbeam 
Beech 

Sus=ar maple 
Red oak 
Yellow Birch 
White ash 

White birch 

Elm 

Red Spruce 

Pin cherry 

Poplar 

Balsam fir 

White pine 

Basswood 



ENERGY FAIR Oct. 

Efficiency of wood stove 
Efficiency of oil burner 
Cost of electricity 
Transportation cost 
Preparation cost 
Time spent 
Value of time 
Cost of fuel oil 



Wood type 





$105 




$89 




$89 




$89 




$87 




$79 




$75 




$70 




$67 




$52 




$48 




$47 




$44 




$43 




$39 


20 - 1979 






50 7. 




65 % 


'$.' 


D70/KWhr 


$18 


♦00/cord 


$3 


♦00/cord 


12 


.00Hrs/cor d 


$3 


♦50/hour 


$. 


960/231. 


Value of one cord 


< 20 


7. Moisture ) 



Hophornbeam 
Beech 

Su£t3r maple 
Red oak 
Yellow Birch 
White ash 
Red Maple 
White birch 
Elm 

Red Spruce 
Pin cherry 
Poplar 
Balsam fir 
White pine 
Basswood 

NOVEMBER 1980 



%73 
$57 
$57 
$56 
$54 
$47 
$42 
$37 
$34 
$17 
$15 
$15 
$11 
$10 
$6 



SOFTWARE FOR THE 

ATARI®400/800 



Quality Software™ offers important software to 
owners of ATARI 400 and 800 computers. All 
programs are on cassette. 

ASSEMBLER by Gary J. Shannon. Create your own 6502 machine 
language p 
16K or mo 
$25! 



ograms with this easy-to-use in- RAM editor/assembler. Requires 
e of RAM to operate. Look at all the features you get for less than 



Insert, delete, edit source code lines 
Save source code on cassette 
Save object code (any part of memory) on tape 
Print out assemblies 
View and modify memory 
Pseudo Ops: 0RG,0BJ,EQU,HEX,ASC,DA,DS,END 
Printer and video control (P0N.P0F,V0N,V0F) 
All 6502 mnemonics plus BLT.BGE 
Commenting allowed 
Error checking 

Documentation includes notes on interfacing 
machine language to BASIC 
• Price —$24.95 



6502 DISASSEMBLER by Bob Pierce. This neat 8K BASIC program 
allows you to disassemble machine code and print out the disassembled 
listing. If you have more than 8K of memory, programs in RAM can be 
disassembled. Operating System ROM and the BASIC ROM can be 
disassembled on any size ATARI. Also works as an ASCII interpreter, 
translating machine code into ASCII characters. $11.95 

FASTGAMMON™ 

by Bob Christiansen. The most popular 
backgammon-playing program for per- 
sonal computers is now available for 
the Atari. This is the best-playing 
version so far, and includes the option 
to enter your own dice rolls. Set the 
display speed to your liking— play fast 
or slow. Beginners find.it easy to learn 

backgammon by playing against the computer, and even very good players 
will find it a challenge to beat FASTGAMM0N. Includes 12 pages of 
instructions that include the rules of the game. Written in machine language. 
Requires only 8K of RAM. $1 9-95 



i '"'i '»' " 4 •» r 


» I.M 
NOWf 


- 




M 

M 

K 

X 

» O 




M 
M 
YOUR MOVE : 


O M 
X 

9 N 


nji ins* 2 * 2 » 3 i h i 

IN MOM! PIOYIK O COMPUtto I 




QUTILny SOFTW7IR6 

6660 Reseda Blvd., Suite 105, Reseda, CA 91335 
Telephone 24 hrs., 7 days a week: (213) 344h5599 



WHERE TO GET IT: Ask your nearest Atari dealer to see Quality Software's Atari 
programs. Or, if you prefer, you may order directly from us. MasterCharge and 
Visa cardholders may telephone their orders and we will deduct $1 from orders 
over $19 to compensate for phone charges. Or mail your order to the address 
above. California residents add 6% sales tax. Shipping Charges: Within North 
America orders must include $1.50 for first class shipping and handling. Out- 
side North America the charge for airmail shipping and handling is $5.00, 
payable in U.S. currency. 

ATARI. ATARI400. and ATARI800 have been trademarked by Atari Personal Computer Systems a Warner 
Communications Company ■ 

CIRCLE 178 ON READER SERVICE CARD 



129 



«*4 






H 
& 

E 



CQMFIJTRQNICS 



I 

N 
C. 



• • • EVERYTHING FOR YOUR TRS-80 • • • 

TRS-80 Is a trademark of the Radio Shack Division of Tandy Corporation 

* All Orders processed within 24-Hours 
* 30-Day Money Back Guarantee on all Software (less a $3 penalty for handling) 

* 10-Day Money Back Guarantee on Disk Drives and Printers PLUS 120-Days Free Service 



LEARNING LEVEL II By David Lierv 
The Original Author Of The Level Manual 
A Step By Step approach to Learning Level II 
especially geared to new TRS-80'" Owners 
$15.95 



TRS-80" DISK AND OTHER MYSTERIES 

Over 100 pages of indespensible information for 
disk owners. Learn to recover information from 
bad disks, how to make Basic programs unlistable 
and 12 more chapters of never published tips and 
information. Written by H.C. Pennington. 
(For all Disk Owners). $22.5 



NEW SBSG BUSINESS SYSTEM FOR MODEL I 
OR MODEL II - IN STOCK 

- General Ledger 

- Accounts Receivable 

- Accounts Payable 

- Payroll 

- Inventory Control with Invoicing 

► Each module can be operated individually or as a 
coordinated SYSTEM. Turn-Key error catching 
operation for beginners. 

► Complete manual and documentation 
accompany each program 

» Minimum System requirements 2-Disk Drives 
for Model I ...1-Disk Drive for Model II 
Each module can be formatted to span data 
on up to 4-Disk Drives 
Free 30-Day telephone consultation 
Call for complete specifications 
Model I Version $125.00 Per Module 

$495.00 Per System 

Model II Version $225.00 Per Module 

$995.00 Per System 

DATA MANAGEMENT SYSTEMS 

- DMS replace index cards or any data requiring' 
long lists of information. 

TBS In-Memory Information System 
(For Cassette Systems) $39.95 

TBS Disk Data Manager (Requires 1 or more disk 
drives). ..Set up fast random access, files in 
minutes Stores up to 320K of information on 4 
Drives. Up to 10 fields and 255 characters per 
record. Supports upper and lower case RS-232 or 
TRS-232. Features complete editing $49.50 

Personal Software CCA Data Management 
System. ..Completely user oriented, menu drive, 
130 page Step By Step Manual. Capable of 
inventory control, sorting data, reporting data in 
nearly any form (for reports and mailing labels). 
Sorts data by up to 10 fields for zip code, balance 
due, geographic location or whatever. Prints 
reports with subtotals and totals automatically 
calculated. Fast random access $75.00 



CQMPUTRQN1CS 



FROM RACET COMPUTES 
• REMODEL-PROLOAD - Renumbers program 
lines, combines programs. The only renumber 
program that will renumber the middle of a 
program. Specify 16K, 32K or 48K. Works with 
Cassette or Disk $34.95 

GSF - Use in your Basic Programs for Instant 
Sorting (will sort 1000 items in 9 seconds). Other 
commands include Compress and Uncompress 
Data. Duplicate Memory, Display Screen Controls 
and Fast Graphic Controls $24.95 

(For Cassette or Disk, specify 16K. 32K or 48K) 
DOSORT - All GSF. commands plus special 
Multiple Disk Sorting Routines $34.95 

(Specify 32K or 48K) 

INFINITE BASIC - Adds 70 commands to your 
TRS-80 7 " including Instant Sort, Matrix 
Commands, String Commands, Left and Right 
Justification, String Centering, Simultaneous 
Equations, Upper and Lower Case Reverse and 
more. (For Cassette or Disk) $49.95 

INFINITE BUSINESS (Requires Infinite Basic) 
Eliminate Round-off error, 127-Digit Calculation 
Accuracy, Insert New Elements in Sorted Arrays. 
Automatic Page Headings, Footings and 
Pagination, Multiple Precision Arithmetic and 
more. (For Cassette or Disk) $29.95 

COPSYS - Copy Machine Language Programs 
(For Cassette Only) $14.95 

DSM (Disk Sort Merge) $75.00 



FROM SMALL SYSTEM SOFTWARE 
RSM-2 Machine Language Monitor $26.95 

RSM-2D Disk Version of RSM-2 $29.95 

DCV-1 Converts Machine Language Programs 
from tape to disk $9.95 

AIR RAID - The ultimate TRS-80'" game converts 
your TRS-80'" into a real time shooting gallery 

$14.95 
BARRICADE - A fast pong style game $14.95 
CPM - (For Disk Only) $150.00 

TRS-232 INTERFACE - Interface with Software 
driver RS-232 printers to your TRS-80'" $49.95 
TRS-232 FORMATTER - Additional (optional) 
Software for TRS-232 owners. Adds many printer 
commands to your TRS-80'" $14.95 

(With purchase of TRS-232) $9.95 

PENMOD - Use the Electric Pencil with RSs lower 
case modification $19.95 



FROM GALACTIC SOFTWARE 

MAIL PAC - For Model I Disk Systems 

only $99.95 

Quick-sorting full user control over mailing list 

from Galactic Software. 

STOCK MARKET PAC $99.95 




50 N. PASCACK ROAD 
SPRING VALLEY, NEW YORK 10977 

HOURS: 9-5 

Monday thru Saturday 

48-Pase Catalog $2 FREE With Any Order 

Order By Phone Or Mail 
Add $1 Per Order For Shipping Within UPS Areas 

Add $3 For C.O.D. 

Add $3 For All Foreign And Non-UPS Shipments 

Add $3 For UPS Blue Label 



HOUR 
24 ORDER 
LINE 

(914) 425-1535 




NEW TOLL-FREE 

ORDER LINE 

(OUTSIDE OF N.Y. STATE) 

(800) 431-2818 



FROM APPARAT NEW DOS ♦ $99.95 

35, 40 and 77 Track Versions available. 

NEW DOS/80 (With variable record length files 

chainings and many other features $149.95 



FROM THE BOTTOM SHELF 

CHECKBOOK II (For Cassette or Disk) $39.95 

SYSTEM DOCTOR (A complete diagnosis of your 

TRS-80'" ..Checks memory, video, cassette, disk, 

ROM, and all other parts of your system) 

For Cassette or Disk $28.50 

CHECKBOOK REGISTER ACCOUNTING 

SYSTEM (Requires 2 disk drives) $75.00 
LIBRARY 100 - 100 established business, game 
and educational programs plus FREE Tiny Pilot 
all for $49.50 

BASIC TOOL KIT - Lists all variables. GOTO's 
and GOSUB's in your program $19.80 



SOUNDWARE - Adds sound to your TRS-80 T " 
Just plus it in $29.95 

Sample programs included. 
TING TONG - Can be used with Soundware for a 
Sound version of pong $9.95 



VIC - The Carta Visual Instructional 

Computer Program $19.95 

The Level II 16K Cassette is designed to teach 
beginners the Basics of Machine Language and 
Assembly Language Programming. See every 
Machine Language Instruction Display on your 
video. VIC includes Step By Step 55 page manual 



VISTA V80 DISK DRIVE - 

11 OK of Storage $395.00 

Add $29.95 for Cable (Free with purchase of 
2-Disk Drives). 10 day money back guarantee. 



FROM HOWE SOFTWARE 

MON-3 - Machine Language Programming for 
beginners. MON-3 is a complete System Monitor 
with Users Manual $39.95 

MON-4 - Disk Version of MON-3 $49.95 



FROM MICROSOFT 

LEVEL III BASIC $49.95 

Now Cassette owners can add Disk Commands 
to their TRS-80 T " without owavaq a Ovsk Oum« 
MICROSOFT DISK ADVENTURE $29.95 

TRSDOS BASIC COMPILER $195.00 

Run Basic Programs up to 15 times faster. 



• NEC BUSINESS QUALITY PRINTERS 

(For MOD-I or MOD-II) $2,995.00 



THE ELECTRIC PENCIL 

Cassette 

Disk 

MOD-II Version 



$99.95 ; 
$150.00 
$325.00 



HORSE SELECTOR II By Dr. Hal Davis 

The TRS-80'- version updated for the TRS-80 T " 
and originally reviewed in Systems and 
Methods $50.00 



IVERYTl 
FOR MOD-II OWNERS 



NEW MOD-II NEWSLETTER 

MOD-II Catalog Free w/subscription $1 2/y ear 

MAIL PAC $199.95 

MICROSOFT BASIC COMPILER 

$395.00 

MICROSOFT BASIC $325.00 

GSF SORT ROUTINE $50.00 

CP/M $170.00 

PEACHTREE BUSINESS 
SOFTWARE 

WORD STAR 



Call 
$495.00 



THE ORIGINAL MAGAZINE FOR 
OWNERS OF THE TRS-80™* MICROCOMPUTER 



SOFTWARE 
OR TRS-80 " 
OWNERS 



N 

t 

E 



CQIYIPUTRQNICS 

MONTHLY NEWSMAGAZINE 

Practical Support For Model I & II 



I 

N 
C. 



MONTHLY 

NEWSMAGAZINE 

FOR TRS-80™ 

OWNERS 



PRACTICAL APPLICATIONS 
BUSINESS 

GAMBLING • GAMES 
EDUCATION 
PERSONAL FINANCE 
BEGINNERS CORNER 
NEW PRODUCTS 
SOFTWARE EXCHANGE 
MARKET PLACE 
QUESTIONS AND ANSWERS 
PROGRAM PRINTOUTS 
AND MORE 




PROGRAMS AND ARTICLES PUBLISHED IN OUR FIRST 12 ISSUES 
INCLUDE THE FOLLOWING: 

A COMPLETE INCOME TAX PROGRAM (LONG AND SHORT FORM) 

INVENTORY CONTROL 

STOCK MARKET ANALYSIS 

WORD PROCESSING PROGRAM (FOR DISK OR CASSETTE) 

LOWER CASE MODIFICATION FOR YOUR VIDEO MONITOR OR PRINTER 

PAYROLL (FEDERAL TAX WITHHOLDING PROGRAM) 

EXTEND 16 DIGIT ACCURACY TO TRS 80 T " FUNCTIONS (SUCH AS 

SQUARE ROOTS AND TRIGONOMETRIC FUNCTIONS) 

NEW DISK DRIVES FOR YOUR TRS-80 T " 

PRINTER OPTIONS AVAILABLE FOR YOUR TRS 80 T " 

A HORSE SELECTION SYSTEM***AR1THMET1C TEACHER 

COMPLETE MAILING LIST PROGRAMS (BOTH FOR DISK OR CASSETTE 

SEQUENTIAL AND RANDOM ACCESS) 

RANDOM SAMPLING***BAR GRAPH 

CHECKBOOK MAINTENANCE PROGRAM 

LEVEL II UPDATES***LEVEL II INDEX 

CREDIT CARD INFORMATION STORAGE FILE 

BEGINNER'S GUIDE TO MACHINE LANGUAGE AND ASSEMBLY 

LANGUAGE 

LINE RENUMBERING 

AND CASSETTE TIPS, PROGRAM HINTS, LATEST PRODUCTS 

COMING SOON (GENERAL LEDGER, ACCOUNTS PAYABLE AND 
RECEIVABLE, FORTRAN 80, FINANCIAL APPLICATIONS PACKAGE, 
PROGRAMS FOR HOMEOWNERS, MERGE TWO PROGRAMS, 
STATISTICAL AND MATHEMATICAL PROGRAMS (BOTH 
ELEMENTARY AND ADVANCED) . . . AND 



WORD PROCESSING PROGRAM (Cassette or Disk) For writing letters, text, mailing lists, etc., with each new subscriptions or renewal. 
M LEVEL II RAM TEST (Cassette or Disk) Checks random access memory to ensure that all memory locations are working properly. 

DATA MANAGEMENT SYSTEM (Cassette or Disk) Complete file management for your TRS 80™ f~f& E* fr"^ 

CLEANUP (Cassette or Disk) Fast action Maze Game ^" # «C 

ADVENTURE (Cassette or Disk) Adventure #0 by Scott Adams (From Adventureland International) 



TRS 80" IS A TRADEMARK OF TANDY CORP 



SEND FOR OUR NEW 48 PAGE SOFTWARE CATALOG (INCLUDING LISTINGS OF HUNDREDS OF TRS-80 T " PROGRAMS AVAILABLE ON 
CASSETTE AND DISKETTE). $200 OR FREE WITH EACH SUBSCRIPTIONS OR SAMPLE ISSUE. 



CQMPUTRQNXCS 

50 N. PASCACK ROAD 
SPRING VALLEY, NEW YORK 10977 



•**sf* 



ONE YEAR SUBSCRIPTION $24 

TWO YEAR SUBSCRIPTION $48 

SAMPLE OF LATEST ISSUE $ 4 

START MY SUBSCRIPTION WITH ISSUE 

(#1 - July 1978 • #7 - January 1979 • #12 - June 1979 
NEW SUBSCRIPTION 



HOUR 
24 ORDER 
LINE 

(914) 425-1535 




NEW TOLL-FREE 
ORDER LINE 

(OUTSIDE OF N.Y. STATE) 

(800) 431-2818 



#18 - January 1980) 



RENEWAL 



NEW!!! 

MOD II NEWSLETTER 
;$l»/year (or 12 issues) 



CREDIT CARD NUMBER 



EXP. DATE. 



SIGNATURE. 



NAME 



ADDRESS 



CITY. 



STATE. 



.ZIP. 



ADD S6/YEAR (CANADA, MEXICO) - ADD $12/YEAR AIR MAIL OUTSIDE OF USA., CANADA & MEXICO ~ 

CIRCLE 137 ON READER SERVICE CARD 




Every day we must make decisions 
that will affect the future functioning 
of our "human engine." The choices 
that precede placing food in one's 
mouth will help determine what our 
bodies become. We constantly hear 
claims made about the benefits and 
hazards of too much or tdo little of 
just about everything. But keeping 
track of the multitude of nutrients 
that we need every day is a task that 
is far too complex and time- 
consuming without the aid of a 
computer. This article describes a 
program that allows the user to 
"feed" a list of what he ate or would 
like to eat into a computer. The 
output obtained provides the quanti- 
ties of eight items of nutritional 
interest along with desired totals that 
are based on the user's age, sex and 
weight. 

The program was written using a 



The choices that precede 
placing food in one's 
mouth will help determine 
what our bodies become. 

Wang system 2200 that has 8K bytes 
of memory and uses a cassette tape 
drive for storing programs and data. 
It can easily be adapted to any 
system with similar capacities and 
can be expanded if a larger system is 
available. Programs similar to this 
are already in use in medical centers 
so that doctors can know exactly 
what their patients are consuming. 1 

Feeding Your Family On 8K Per Day 

With 8K bytes of memory and no 
disk drives available, the selection of 
foods must be limited somewhat. It 
is possible, however, to set up a list 

Douglas Green, Cortland Jr.-Sr. High School, 
Cortland, NY 13045 



Planning and Evaluating 

Your Diet 



Douglas Green 



of about 100 commonly-consumed 
foods that will satisfy the needs of 
most people. There was also a need 
to limit the number of nutrients that 
would be analyzed at one time. In 
this program the author decided to 
store data regarding eight nutrients 
for each of 94 food items. The foods 
selected and the nutrient data are 
presented in Figure 1 . This list is part 
of the output provided by the 



Although there are more categories 
than the fourteen listed in Figure 2, 
everyone can fit into one or another. 
In some cases categories have been 
lumped together. Where this is done, 
the factors used are averages of the 
factors from food groups that are 
close enough together so as to cause 
very little error in the final output. 
Since the tables you usually see 
printed are for the man or woman of 







THE 


AGE AND 


SEX 


CATAG0RIES 


ARE: 








AGE 


SEX 


CAT. 


NO. 


AGE 


SEX 


CAT. 


NO. 


AGE 


SEX 


CAT. 


NO. 


1 


M/F 


1 




2 


M/F 


2 




3 


M/F 


3 




4-5 


M/F 


4 




6-7 


M/F 


5 




8-9 


M/F 


6 




10-11 


M 


7 




12-13 


M 


8 




14-17 


M 


9 




18+ 


M 


10 




10-11 


F 


11 




12-13 


F 


12 




14-17 


F 


13 




18+ 


F 


14 













Figure 2 

program. It is only printed if asked 
for, however, so as to avoid needless 
output. This list is an alphanumeric 
list that is dimensioned by using the 
statement: DIM A$(100)40. The quan- 
tities of each item are listed after the 
name and are generally given in 
pounds, cups, teaspoons (TSP), 
tablespoons (TB), or ounces. For 
items like apples and oranges, 
medium size is assumed. The infor- 
mation presented here was obtained 
from Food Values of Portions Com- 
monly Used, by Bowes and Church. 2 
In order to jam all of this data into 
8K, it was necessary to store the 
numerical data as part of an alpha- 
numeric list and convert each entry 
to a numeric variable just prior to any 
calculation. 

Since your age and sex determine 
in part how much of a given nutrient 
you need per kilogram of body 
weight per day, it is necessary to 
resort to the use of a number of 
factors that relate to these variables. 



average weight, the data are not very 
useful for anyone very far from the 
mean. Here, however, all of the 
factors are given per kilogram of 
body mass so that the dietary needs 
of a person of any size can be 
determined. A look at Figure 3 will 
show how nutrient requirements vary 
from one group to another. 

Drawing The Nutritional Line 

It was easy to select calories and 
protein as important items of interest 
to most people. Calories are usually 
of the greatest concern due to the 
fact that a plus or minus in one's 
calorie budget will result in a change 
in weight. It is important information 
whether you are trying to alter your 
weight or just maintain a desirable 
mass. Protein is also of interest, 
since most of our tissue is composed 
of protein of some sort. I have yet to 
run this program for anyone and get 
less than the required amount of 
protein, however. 



132 



CREATIVE COMPUTING 



DISK DRIVE WOES? PRINTER INTERACTION? 
MEMORY LOSS? ERRATIC OPERATION? 
DON'T BLAME THE SOFTWARE! 





ISO-1 "\) ISO-2 

Power Line Spikes, Surges & Hash could be the culprit! 
Floppies, printers, memory & processor often interact! 
Our unique ISOLATORS eliminate equipment interaction 
AND curb damaging Power Line Spikes, Surges and Hash. 

'ISOLATOR (ISO-1 A) 3 filter isolated 3 prong sockets; 

integral Surge/Spike Suppression; 1875 W Maximum load, 
1 KW load any socket $56.95 

•ISOLATOR (ISO-2) 2 filter isolated 3-prong socket banks; 

(6 sockets total); integral Spike/Surge Suppression; 

1875 W Max load, 1 KW either bank $56.95 

•SUPER ISOLATOR (ISO-3), similar to ISO 1 A 

except double filtering & Suppression .... $85.95 
'ISOLATOR (ISO-4), similar to ISO-1 A except 

unit has 6 individually filtered sockets .... $96.95 
•ISOLATOR (ISO-5), similar to ISO-2 except 

unit has 3 socket banks, 9 sockets total . . . $79.95 
•CIRCUIT BREAKER, any model (add-CB) Add $ 7.00 
•CKT BRKR/SWITCH/PILOT any model 

(-CBS) Add $14.00 

PHONE ORDERS 1 617 655 1532 

Specialists, Inc. 





171 South Main Street. Natick. Mass. 01760 



DaptCC 



DISCOUNT PRICES 



APPLE II COMPUTERS 



16K APPLE II 


$959.00 


32K APPLE II 


1024.00 


48K APPLE II 


1089.00 


DISK W/CONTROLLER 


525.00 


DISK ONLY 


450.00 


APPLESOFT CARD 


159.00 


INTEGER CARD 


159.00 


PASCAL 


440.00 


SILENTYPE PRINTER 


525.00 


RAM MEMORY 




FOR TRS-80, APPLE 




16KSET4116's 


65.00 



CIRCLE 142 ON READER SERVICE CARD 



T.M 



PROGRAMS 



Micro- 
computer 
Educational 
Programs 



Interpretive Education, providing leadership in 
educational programs for basic living skills, introduces 
the new micro-computer educational (MCE) programs. 
The MCE programs are being thoroughly developed 
and tested with the cooperation of educators and 
computer programming experts. The new high tech- 
nology product line is being generated to offer basic 
living skills on floppy disc and tape. They are designed 
for application on Apple II*. TRS-80** and other 
micro-computers. 

Please call collect today for more information on how 
MCE programs can aid your teaching efforts with 
special needs audiences. 

*A trademark of Apple Computer, Inc 
* * A trademark ot Tandy Corporation 

For free information and catalog, write or 
CALL COLLECT (616) 345-8681 



* 



INTERPRETIVE EDUCATION 

? 306 Winters Dr KjI.hu • VII 4 9l 



CIRCLE 208 ON READER SERVICE CARD 




NORTH STAR COMPUTERS 




HRZ-1D-32K-KIT 
HRZ-1D-32K-ASM 
HRZ-2D-32K-KIT 
HRZ-2D-32K-ASM 



VERBATIM DISKETTES 

BOX OF 10 5V4" 

BOX OF 10 8" 



$1595.00 
2125.00 
1950.00 
2475.00 



29.50 
39.50 



FREDERICK COMPUTER PRODUCTS 

MUNICIPAL AIRPORT 

FREDERICK, MD. 21701 

(301) 694-8884 



CIRCLE 140 ON READER SERVICE CARD 



ATARI 

The 6502 Journal 



Are you tired of searching through computer 
magazines to find articles that relate to your 6502 
system? Since 1977 MICRO has been devoted ex- 
clusively to 6502 systems. On a regular monthly 
basis, MICRO publishes application notes, hardware 
and software tutorials, interfacing information and 
program descriptions with complete source listings, 
a continuing 6502 bibliography, with the same 
printed quality as the magazine you are now reading. 
In the near future, MICRO plans to add a hardware 
catalog, product evaluations, technical data sheets, 
and a news section on current 6502 happenings. We 
have already published over 20 issues and our world- 
wide circulation has been growing with each issue. 
MICRO is the complete reference source for all 6502 
enthusiasts, and we're prepared to let you see for 
yourself. If you haven't seen MICRO yet, write to the 
address below for a FREE sample copy. No matter 
what computer magazines you have, if you are 
serious about 6502, you need MICRO! 

You can order twelve issues of MICRO for $15.00 within the 
United States, or for $18.00 outside the U.S. Air mail 
subscriptions cost $27.00 in Central America, $33.00 in 
Europe and South America, and $39.00 in all other countries. 

P.O. Box 6502 
Chelmsford, MA 01824 

CIRCLE 222 ON READER SERVICE CARD . 



NOVEMBER 1980 



133 



Diet, cont'd... 



The next item on the list is fiber. 
This is the nondigestible matter that 
surrounds the cells of plant material. 
As a result, it acts as nature's own 
roto-router for the large intestine. 
Studies have shown that societies 
where a lot of fiber is consumed have 
fewer cases of colon cancer than 
societies like ours where fiber is less 
prevalent in the diet. 3 Although 
there is no recommended daily 
allowance for fiber, most experts in 



It is possible to set up a 
list of about 100 common- 
ly consumed foods that 
will satisfy the needs of 
most people. 

this field feel that fiber is essential 
for the proper functioning of the 
digestive tract. 

Now for the micronutrients. Here 
we are concerned with minerals and 
vitamins. Out of necessity we must 
narrow the field to representative 
members. In this program I have 
chosen calcium, for strong bones 
and teeth; and iron, to prevent "tired 
blood." These two seem like the 
most important minerals around, 
although there are others you cannot 
do without. From vitamin land we 
have vitamin A, for good eyes, 
vitamin B1, a representative B vita- 
min, and vitamin C, a favorite of 
Linus Pauling. Vitamin A is a 
representative fat-soluble vitamin 
that comes in foods that tend to 
contain other such aquaphobes. 
Foods containing vitamin B1 tend to 
also be high in other B vitamins 
hence the term B complex, while 
vitamin C is a water-sol uable vitamin 
that should be consumed on a daily 
basis, since we tend to excrete it if it 
is not used. The units selected were 
chosen so as to avoid the use of 
decimals. Thus we have protein 
listed as grams*10 and vitamin A 
listed as International units/100. 
This also conserves space in memory 
since the decimal point need not be 
stored, not to mention the fact that 
many people who like food just fine 
are scared to death of decimals. 

Setting Up The Data File 

For a system as the one used here 
it takes a separate program to set up 
a data file that will be used during the 
running of the main program. This is 
accomplished by the use of Program 
1 . The first set of nested loops allows 
for the input of the table of factors. 



NAME AND QUANTITY 

1 MEAT-PQUL-FISH 

2 BURGER PATTY 1/4 

3 PATTY U/CHEESE 

4 SIRLOIN 1/4LB 

5 PORK 1/4LB 

6 HAM 1/4LB 

7 LIVER 1/4LB 

8 CHICKEN 1/4LB 

9 BOLOGNA 1 SLICE 

10 FRANKFURTER 1 

11 HADDOCK 1/2LB 

12 TUNA 1/4LB 

13 LOBSTER 1/2LB 

14 SHRIMP 1/2LB 

15 BACON 1 SLICE 

16 DAIRY PRODUCTS 

17 MILK WHOLE 1C 

18 MILK SKIM 1C 

19 BUTTER 1TSP 

20 MARGARINE 1TSP 

21 CHEESE CHED 10Z 

22 COTTAGE CHE.2QZ 

23 EGG 1LG 

24 SALAD DRES 1TB 

25 MAYONNAISE 1TB 

26 CREAM CHEESE 1TB 

27 CREAM LIGHT 2TB 

28 CREAM HEAVY 1TB 

29 BREAD-CEREALS 

30 UHITE 1 SLICE 

31 WHEAT 1 SLICE 

32 BUN-BURGER/FRANK 

33 PANCAKE 1 

34 MUFFIN-CORN 

35 MUFFIN-BLUEBERRY 

36 FRENCH TOAST SLI 

37 WAFFLE 1 

38 ALL BRAN 1/2C 

39 40% BRAN 3/4C 

40 CHEERIOS 1C 

41 CORN FLAKES 1C 

42 OATMEAL 3/4C 

43 RICE KRISPIES 1C 

44 WHEATIES 1C 

45 SHREDDED WHEAT 1 

46 SUGAR CEREAL 1C 

47 MACARONI 1C 

48 RICE 1C 

49 SPAGHETTI 1C 

50 NACW/CHEESE 1C 

51 SPAG.W/SAUCE 1C 

52 PIZZA/CHE 1 SLIC 

53 VEGETABLES 

54 BROCCOLI 2/3C 

55 CAULIFLOWER 1C 

56 CELERY 1C RAW 

57 CUCUMBER 1/2C RW 

58 EGGPLANT 1/2C 

59 LETTUCE 4LG LEAV 

60 GREEN PEPPER 1 

61 SPINACH 1/2C 

62 STRING BEANS 1C 

63 SQUASH 1/2C 

64 TOMATO 1 RAW 

65 CARROTS 1/2C RAW 

66 ONIONS 1/2C 

67 PEAS 1/2C 

68 TOMATO JUICE 1/2 

69 COLESLAW 1/2C 

70 TOSSED SALAD 

71 PEANUTS 20 NUTS 

72 PEANUT BUTTER IT 

73 POTATO-MASH 1/2C 

74 FRENCH FRY 1/4LB 

75 BEANS+PORK 1/4LB 

76 FRUITS 

77 APPLE RAW 1 

78 BANANA RAW 1 

79 ORANGE 1 

80 ORANGE JUICE1/2C 

81 PEACH RAW 1 

82 RAISINS 2TB 

83 PINEAPPLE 1/3C 

84 DESSERTS&MISC 

85 COLA 12 OZ 

86 CHOC MILK 1C 

87 COFFEE BLACK 1C 

88 BEER 12 OZ 

89 BOOZE 1-5 OZ 

90 WINE 4 OZ 

91 ICE CREAM 2/3C 

134 



CAL. 


PROTEIN 


FIBER 


CALCIUM 


IRON 


VIT-B1 


VIT-C 


VIT-i 


344 


292 


000 


012 


040 


108 


000 


001 


428 


341 


000 


041 


041 


118 


000 


001 


424 


296 


000 


012 


036 


084 


000 


001 


468 


296 


000 


016 


040 


999 


000 


000 


348 


252 


000 


012 


032 


560 


000 


000 


276 


316 


000 


012 


104 


312 


032 


640 


220 


388 


000 


016 


028 


080 


000 


002 


122 


048 


000 


003 


007 


064 


000 


000 


154 


062 


000 


004 


009 


080 


000 


000 


400 


472 


000 


096 


032 


096 


008 


000 


356 


348 


000 


008 


024 


060 


000 


001 


230 


420 


000 


056 


012 


999 


000 


000 


276 


582 


000 


276 


072 


024 


000 


001 


061 


030 


000 


001 


003 


051 


000 


000 


159 


085 


000 


288 


000 


070 


002 


034 


088 


088 


000 


298 


000 


100 


002 


000 


036 


000 


000 


001 


000 


000 


000 


017 


036 


000 


000 


001 


000 


000 


000 


017 


120 


075 


000 


225 


003 


009 


000 


039 


051 


095 


000 


053 


002 


017 


000 


001 


090 


070 


000 


030 


013 


060 


000 


065 


063 


001 


000 


002 


000 


000 


000 


000 


108 


002 


000 


003 


000 


003 


000 


004 


056 


012 


000 


009 


000 


003 


000 


023 


063 


009 


000 


031 


000 


009 


000 


003 


053 


003 


000 


Oil 


000 


003 


000 


002 


062 


020 


000 


016 


006 


060 


000 


000 


056 


024 


004 


023 


005 


060 


000 


000 


089 


025 


001 


022 


006 


080 


000 


000 


104 


032 


001 


045 


006 


080 


000 


001 


141 


032 


001 


047 


008 


090 


000 


001 


112 


029 


001 


034 


006 


060 


001 


001 


183 


055 


001 


077 


009 


090 


000 


006 


209 


070 


001 


085 


013 


130 


000 


003 


095 


031 


023 


024 


029 


110 


000 


000 


100 


028 


010 


016 


013 


100 


000 


000 


102 


034 


003 


042 


Oil 


302 


000 


000 


095 


021 


002 


006 


005 


100 


000 


000 


098 


045 


004 


153 


135 


761 


000 


000 


107 


016 


000 


007 


005 


110 


000 


000 


104 


028 


005 


001 


017 


167 


000 


000 


084 


022 


005 


Oil 


008 


065 


000 


000 


140 


020 


000 


000 


004 


110 


000 


000 


207 


070 


001 


015 


015 


250 


000 


000 


159 


032 


002 


029 


012 


160 


000 


000 


216 


073 


001 


016 


016 


260 


000 


000 


506 


189 


002 


407 


020 


220 


000 


^10 


396 


127 


007 


027 


021 


120 


000 


010 


236 


120 


003 


221 


010 


060 


008 


006 


026 


031 


015 


088 


008 


090 


090 


025 


025 


026 


Oil 


019 


006 


045 


046 


000 


010 


005 


004 


025 


003 


025 


006 


001 


007 


003 


002 


009 


002 


015 


006 


000 


019 


010 


009 


Oil 


006 


050 


003 


000 


013 


009 


005 


020 


005 


060 


006 


003 


022 


012 


014 


009 


007 


080 


128 


004 


023 


030 


006 


093 


022 


070 


028 


081 


025 


016 


010 


050 


006 


070 


012 


005 


014 


009 


006 


025 


004 


050 


010 


004 


022 


Oil 


005 


013 


005 


060 


023 


009 


042 


012 


010 


036 


008 


060 


008 


110 


029 


012 


006 


024 


004 


030 


007 


000 


057 


043 


016 


018 


014 


224 


016 


004 


019 


009 


002 


007 


009 


050 


016 


008 


099 


012 


007 


043 


004 


050 


029 


002 


098 


020 


010 


035 


Oil 


120 


029 


012 


114 


053 


007 


015 


004 


060 


000 


000 


115 


052 


004 


015 


004 


024 


000 


000 


094 


021 


004 


024 


004 


080 


009 


002 


250 


041 


008 


010 


020 


160 


024 


000 


160 


083 


000 


042 


022 


075 


000 


002 


048 


002 


008 


006 


003 


024 


003 


001 


042 


006 


002 


004 


004 


025 


005 


001 


049 


010 


005 


041 


004 


100 


050 


002 


045 


007 


001 


Oil 


002 


090 


050 


002 


038 


006 


006 


009 


005 


020 


007 


013 


043 


004 


001 


009 


005 


016 


000 


000 


044 


003 


001 


012 


002 


040 


007 


000 


156 


000 


000 


000 


000 


000 


000 


000 


208 


068 


001 


222 


005 


076 


002 


003 


005 


003 


000 


005 


002 


010 


000 


000 


160 


021 


000 


015 


000 


000 


000 


000 


105 


000 


000 


000 


000 


000 


000 


000 


090 


002 


000 


000 


000 


000 


000 


000 


200 


034 


000 


126 


000 


050 


000 


004 










CREATIVE COMPUTING 



A REMARKABLE MAGAZINE 




David Ahl, Founder and 
Publisher of Creative Computing 

You might think the term creative com- 
puting" is a contradiction. How can some- 
thing as precise and logical as electronic 
computing possibly be creative? We think 
it can be. Consider the way computers are 
being used to create special effects in 
movies-image generation, coloring, and 
computer-driven cameras and props. Or 
an electronic "sketchpad" for your home 
computer that adds animation, coloring 
and shading at your direction. How about 
a computer simulation of an invasion of 
killer bees with you trying to find a way of 
keeping them under control? 

Beyond Our Dreams 

Computers are not creative perse. But the 
way in which they are used can be highly 
creative and imaginative. Five years ago 
when Creative Computing magazine first 
billed itself as "The Number 1 magazine of 
computer applications and software," we 
had no idea how far that would take us. 
Today, these applications are becoming 
so broad, so all-encompassing that the 
computer field will soon include virtually 
everting'. 

In light of this generality, we take "ap- 
plication" to mean whatever can be done 
with computers, ought to be done with 
computers, or might be done with com- 
puters. That is the meat of Creative Com- 
puting. 

Alvin Toffler, author of Future Shock 
and The Third Wave says, "I read Creative 
Computing not only for information about 
how to make the most of my own equip- 
ment but to keep an eye on how the whole 
field is emerging." 

Creative Computing, the company as 
well as the magazine, is uniquely light- 
hearted but also seriously interested in all 
aspects of computing. Ours is the mag- 
azine of software, graphics, games and 
simulations for beginners and relaxing 
professionals. We try to present the new 
and important ideas of the field in a way 
that a 14-year old or a Cobol programmer 

NOVEMBER 1980 



GPeafcive 
computing 



"The beat covered by Creative Computing 
is one of the most important, explosive and 
fast-changing. "—Alvin Toffler 



can understand them. Things like text edit- 
ing, social simulations, control of house- 
hold devices, animation and graphics, and 
communications networks. 

Understandable Yet Challenging 

As the premier magazine for beginners, 
it is our solemn responsibility to make 
what we publish comprehensible to the 
newcomer. That does not mean easy; our 
readers like to be challenged. It means 
providing the reader who has no prepar- 
ation with every possible means to seize 
the subject matter and make it his own. 

However, we don t want the experts in 
our audience to be bored. So we try to 
publish articles of interest to beginners 
and experts at the same time. Ideally, we 
would like every piece to have instruc- 
tional or informative content— and some 
depth— even when communicated humor- 
ously or playfully. Thus, our favorite kind 
of piece is accessible to the beginner, 
theoretically non-trivial, interesting on 
more than one level, and perhaps even 
humorous. 

David Gerrold of Star Trek fame says, 
"Creative Computing with its unpreten- 
tious, down-to-earth lucidity encourages 
the computer user to have fun. Creative 
Computing makes it possible for me to 
learn basic programming skills and use the 
computer better than any other source." 

Hard-hitting Evaluations 

At Creative Computing we obtain new 
computer systems, peripherals, and soft- 
ware as soon as they are announced. We 
put them through their paces in our Soft- 
ware Development Center and also in the 
environment for which they are intended- 
home, business, laboratory, or school. 

Our evaluations are unbiased and accur- 
ate. We compared word processing print- 
ers and found two losers among highly 
promoted makes. Conversely, we found 
one computer had far more than its adver- 
tised capability. Of 16 educational pack- 



135 



ages, only seven offered solid learning 
value. 

When we say unbiased reviews we 
mean it. More than once, our honesty has 
cost us an advertiser— temporarily. But we 
feel that our first obligation is to our read- 
ers and that editorial excellence and inte- 
grity are our highest goals. 

Karl Zinn at the University of Michigan 
feels we are meeting these goals when he 
writes, "Creative Computing consistently 
provides value in articles, product reviews 
and systems comparisons. . .in a magazine 
that is fun to read." 

Order Today 

To order your subscription to Creative 
Computing, send $15 for one year (12. 
issues), $28 for two years (24 issues) or 
$40 for three years (36 issues). If you pre- 
fer, call our toll-free number, 800-631- 
8112 (in NJ 201-540-0445) to put your 
subscription on your MasterCard, Visa or 
American Express card. Canadian and 
other foreign surface subscriptions are 
$24 per year, and must be prepaid. We 
guarantee your satisfaction or we will re- 
fund the unfulfilled portion of your sub- 
scription. 

Join over 80,000 subscribers like Ann 
Lewin, Director of the Capital Children's 
Museum who says, "I am very much im- 
pressed with Creative Computing. It is 
helping to demystify the computer. Its ar-_ 
tides are helpful, humorous and humane. 
The world needs Creative Computing 

creative 
GontpatiRg 

P.O. Box 789-M 

Morristown, NJ 07960 

Toll-free 800-631 -811 2 

(In NJ 201-540-0445) 



Diet, cont'd... 



NAME AND QUANTITY 


CAL. 


PROTEIN 


FIBER 


CALCIUM 


IRON 


VIT-B1 


VIT-C 


UIT-A 


92 DOUGHNUT 1 


125 


015 


000 


013 


004 


050 


000 


000 


93 CAKE/ICED 1 SL 


208 


020 


000 


046 


008 


Oil 


000 


001 


94 COOKIE CHOC CHIP 


051 


006 


000 


004 


002 


004 


000 


000 


95 GELATIN 2/3C 


109 


022 


000 


003 


000 


009 


010 


000 


96 POTATO CHIPS 10 


108 


014 


002 


003 


002 


018 


001 


000 


97 PIE APPLE 1/6PIE 


410 


034 


006 


001 


005 


030 


002 


001 


98 SUGAR 1TSP 


016 


000 


000 


000 


000 


000 


000 


000 


99 CATSUP 1TB 


019 


003 


000 


004 


001 


020 


003 


002 


100 FRUIT DRINK 1C 


106 


000 


000 


000 


000 


000 


003 


000 



Figure 1 



This 14 by 7 array shown in Figure 3 
is stored as matrix F( ). While these 
numbers are being input, the pro- 
gram continually prints the position 
of the factor in the matrix on the 
screen so that the operator can keep 
track of which piece of data is to be 
entered next. The next loop allows 
for the input of the list of foods along 
with the nutrient profile of each. 
Included in this list are six headings. 
These are used to help organize the 
list and to make the foods easy to 
find on the printed list (Figure 1). 
The name and quantity of each food 
item must fit into the first 16 spaces 
of each member of the list A$( ). For 
this reason it is easier to input the 
name and quantity as a separate 
entry. This saves the trouble of 
counting the number of spaces used, 
so that the number of calories begins 
in tine 17th column. The remaining 24 
spaces in each variable are filled with 
the nutritional data for each item 
except of course for the headings. 
The data for each of the eight 
nutrients is allotted three spaces, 
and zeros are used to fill in any 
spaces that remain on the left. This 
must be done so that the computer 
does not find itself trying to convert a 
space into a number. 



After the data have all been input, 
the remaining statements in Program 
1 serve to save it on your tape. Be 
sure to check the user's manual for 
your system in order to obtain the 
correct statements. Here, the DATA 
SAVE OPEN "FOOD" places a leader 

The tables you usually see 
are for the average; here, 
however, the dietary needs 
of a person of any size can 
be determined, 

on the tape, so that the beginning of 
the data file is marked. DATA SAVE 
A$( ), F( ) causes the computer to 
record the values from lists A$ and F 
currently in the memory onto the 
tape, while DATA SAVE END marks 
the end of the file. The DATA LOAD 
statements at the beginning of 
Program 2, the main program, cause 
the reverse process to take place. 
Here the information is loaded off the 
tape and into the computer's memo- 
ry. What, no Brie? 

It seems that everyone who looks 
at the list in Figure 1 tries immediate- 
ly to find their favorite exotic food 



that is certain not to be listed. 
Having only room for 94 items, I had 
to make some decisions as to what 
should be included and what would 
be left out. I have tried to list the 
most common foods that are con- 
sumed in this society. The foods are 
listed according to standard food 
groupings as the headings show. The 
"junk food" items have been saved 
for the last section of the list. When 
selecting foods for a given number of 
meals, one should be careful to 
include everything. Many people are 
apt to leave out snacks that they 
normally consume between meals. If 
you are planning for three meals, be 
sure to include all snacks— since the 
program considers three meals to be 
one day's worth of eating. This also 
means that one meal is exactly 1 /3 of 
one day's worth of eating. Other 
things to check for are things like 
hamburgers and hotdogs, which 
require also the addition of the roll. 
(This adjustment allows the user to 
eat just plain hamburgers or hot dogs 
without the roll if desired.) For 
convenience, however, tossed salad 
is listed as a separate item to save 
the user the trouble of tossing their 
own. 

If you are serious about using this 
program, but find the selection of 
foods to be a problem, you can 
simply scan the list and find food 
items that you never eat and substi- 
tute the items you feel should have 
been there. Another option is to 
replace the headings with foods that 
you eat often that do not appear on 
the list. When adding your own food 
items, be sure to get the correct units 
for each of the nutrients. A good way 



FAC 


TORS USED TO 


DETERMINE 


DESIRED 


TOTALS 


CATAGQRY 


CALORIES 


PROTEIN GM*10 CA HG 


IRON *G*10 


81 MCG 


C MG 


A IU/100 


1 




91.7 


20.8 




58.3 


12.5 


50.0 


3.33 


1.67 


2 




89.3 


17.9 




57.1 


10.7 


42.9 


2.86 


1.43 


3 




87.5 


18.8 




50.0 


6.2 


43.8 


2.50 


1.56 


4 




84.2 


15.8 




42.1 


5.2 


42.1 


2.11 


1.32 


S 




87.0 


15.2 




39.1 


4.3 


43.5 


1.74 


1.52 


6 




78.6 


14.3 




35.7 


3.5 


39.3 


1.43 


1.25 


7 




32.5 


12.9 




34.3 


2.8 


37.1 


1.14 


1.28 


8 




62.8 


11.6 




32.6 


4.1 


32.6 


1.05 


1.16 


9 




50.8 


10.2 




23.7 


3.0 


25.4 


0.93 


0.84 


10 




41.8 


9.0 




11.2 


1.4 


20.9 


0.90 


0.74 


11 




64.3 


14.3 




34.2 


5.1 


31.4 


1.14 


1.29 


12 




52.3 


11.4 




29.5 


4.1 


27.3 


1.02 


1.14 


13 




44.3 


10.3 




24.5 


3.4 


22.7 


0.94 


0.94 


14 




34.5 


9.5 




13.8 


3.1 


17.2 


0.94 


0.86 


NOTE: 


ALL 


FACTORS ARE PER KG 


PER 


DAY 











Figure 3 



136 



CREATIVE COMPUTING 



NEW YORK STOCK EXCHANGE 

AMERICAN STOCK EXCMANOE HOLIDAY INN 121 

OVER THE COUNTER ASCII *'» 



SEPTEMBER 1M0 

LARRY YOU OOT YOUR CURRENT SALARY 

OF MM 00 

* 40000 
RANOI 

1ST 423 



BUY LARRY 400 SHARES OF IBM i III 43 





vvvvvvvv^v«« vr -www vg 



PET Printer Adapter 



Stock Market 



NEW! ASCII 

for the TRS-80* 
Every month you receive a certified ASCII C-20 cassette 
containing: a cover page with a directory of programs 
4 original programs 
an information packed newsletter 
and information on ASCII funded contests 

Rates: 1 year [12 issues] $35.00 

6 months [6 issues] $20.00 

Sample issue $ 4.00 

Write For Overseas Rates 

To subscribe, write to: ASCII 

P.O. Box 516, Valley Stream, N.Y. 11582 

Or call: (51 5) 791 -4723 

Level II16K Required 
* TRS-80 

is a 
product 

of 

Tandy 

Corp. 

CIRCLE 1160N READER SERVICE CARD 






CmC's ADA 1400 drives a printer with an RS-232 
interface from the Commodore PET IEEE-488 bus. 
The ADA 1400 is addressable, works with the 
Commodore disk and prints upper and lower case 
ASCII. 

A PET IEEE type port is provided for daisy- 
chaining other devices. 

A cassette tape is included with programs for plot 
routines, data formatting and screen dumps. The 
ADA 1400 sells for $179.00 and includes a PET 
IEEE cable, RS-232 cable, power supply, case, 
instiuct'ons and software. 

Order direct or contact your local computer store. 

t VISA & M/C ACCEPTED-SEND ACCOUNT NO . EXPIRATION DATE AND SIGN ORDER 

ADD $3 PER ORDER FOR SHIPPING & HANDLING-FOREIGN ORDERS ADD 10% FOR AIR POSTAGE 



Connecticut microcomputer, Inc. 

34 Del Mar Drive, Brookfield, CT 06804 
203 775-4595 TWX 710 456-0052 



I 




rLr-ww^g^xr^x^xL'^r-^oc: 



xxxxxx 




Now you can add hard copy 
capability to your computer 
with plug-in simplicity that 
matches up to any micro 
system. And with the Eaton 
7000+ dot-matrix printer, 
you get complete printout 
versatility at an 
affordable price. 

Interfaces with 

any personal computer 

Apple, Commodore Pet, TRS-J 
Northstar and others — no matter 
what type of computer you have or 
are thinking of buying, Eaton 7000+ 
fits. Just plug it in and start printing. 
You'll get virtually maintenance-free 
operation with a minimum of moving 
parts. And minimum life of 100 
million characters with Eaton's 
newest printhead, while the print 




mechanism is designed 

for a minimum of 10 million cycles. 

High performance design 

The 7000+ features uni-directional 
printing at a speed of 1.25 lines 
per second. It accepts any standard 
single or 2-ply roll paper from %" to 



PLUG IN AND 
PRINT OUT- 
IN SECONDS! 



Wb" wide and prints 3V 3 " line 
'ith 40 to 64 adjustable character 
capacity. 

For immediate information call: 
Eaton Printer Product Operations, 
307/856-4821. 

For descriptive literature and the 
name of your nearest dealer write 
Eaton Corporation, Count Control/ 
Systems Division, 901 South 12th St., 
Watertown, Wl 53094. 
Dealer inquiries invited. 



Electrical/ Electronic Control 




NOVEMBER 1980 



CIRCLE 153 ON READER SERVICE CARD 



EAT-1A 



137 



Diet, cont'd... 

to check this out is to see if your 
values appear to be in line with the 
other values on the list. If any of the 
numbers seem too high or too low, 
you may have your decimal in the 
wrong location. This is one of the 
ways I checked the original list after 
it had been input. Since entering all 
of this data represents a good deal of 
work, be sure to keep a backup tape 
with the same program and data 
files. 



Many people are apt to 
leave out snacks that they 
normally consume be- 
tween meals. 



How The Program Works 

A look at the flowchart in Figure 4 
will provide an overview of how the 
program works. After the program is 
loaded into memory, the data file 
should then be positioned so that it 
will be the next in line. If the data is 
on a separate tape, then the program 
tape must first be removed and 
replaced with the data tape. After the 
command run is executed, the com- 
puter will load the data into the space 
saved for the food list, A$( ) and the 
factor table F( ). This is accom- 
plished by data load statements 50 
and 60. With the data in place the 
user is then asked if a list of the 
foods is needed. If this is the case, a 
list is provided by statements 440 
through 540. The name of each item 
is printed as part of an outer loop 
that goes from 1 to 100. An inner 
loop from 1 to 8 allows for the 
printing of the eight nutrients with- 
out the extra fuss of a printusing 
statement. (In order to do this sort of 
thing it is necessary to use a 
statement like number 500 where the 
value of the TAB is a function of the 
loop counter. The ability to figure out 
such functions by the "seat of the 
pants" is a skill that any professional 
programmer must possess.) 

Now we come to the inputs that 
describe the user. This requires that 
the list of age/sex categories shown 
in Figure 2 be displayed on the CRT. 
In addition to selecting the category 
the user must also include his weight 
in pounds. The category number tells 
the computer which row of factors to 
use when determining the desired 
totals. The weight is converted into 



10 REM ***SAVE ROOM IN MEMORY FOR FOOD LIST AND FACTORS*** 

20 DIM Af(100)40 f F(14 f 7) 

30 REM ***INPUT FACTORS FOR EACH AGE/SEX GROUP*** 

40 FOR N = 1 TO 14 

SO FOR M = 1 TO 7 

60 PRINT N;M 

70 INPUT F(N r M) 

80 NEXT M 

90 NEXT N 

100 STOP "MAKE CORRECTIONS TO FACTOR LIST" 

110 REM ***INPUT VALUES FOR FOOD LIST A$()*** 

120 FOR N ■ 1 TO 100 

130 REM ***INPUT NAME AND QUANTITY*** 

140 PRINT N 

150 INPUT STR(A$(N) f l f 16) 

160 REM ***INPUT NUTRIENT DATA*** 

170 INPUT STR<A$<N>, 17 f 24) 

180 NEXT N 

190 STOP "MAKE CORRECTIONS TO FOOD LIST" 

200 REM ***SAVE DATA ON TAPE*** 

210 DATA SAVE OPEN "FOODS" 

220 DATA SAVE A*() r F<) 

230 DATA SAVE END 

240 END Program #1 



kilograms and multiplied by each 
factor in order to arrive at the daily 
required values for the operator. With 
the user characteristics in place, it is 
time to enter the numbers of the 
items in the user's menu along with 
the number of units of each item and 
the number of meals that will be 



represented by the food selected. As 
these menu items are entered, a list 
of the foods selected is printed so 
that the total menu can be surveyed 
after it has been fed in. As the items 
are entered,the computer maintains a 
list of totals for each of the eight 
nutrients. This is the list Q(). This is 



Flow Chart 
CSTART ) 



Load data from tape 
Food list A$() and 
Factors F() 



no 




yes 



Print the list 

of available foods. 



I 



Input Age/sex, weight, 

and number of meals that 

you wish to plan or evaluate. 




Input Item number and the 
number of units you desire. 



no 




Print your totals, your 
desired totals, and the %of 
the desired totals. 




yes 



Figure 4 



138 



CREATIVE COMPUTING 




NORTHERN JERSEY S ONLY COMPLETE 
COMPUTER SYSTEMS HOUSE 

For The Most Cost-Effective 

CSl WORD PROCESSORS 

CSl Automated Office Systems 

More Powerful Than The 
VYDEC LANIER and XEROX 

CSl 800 WP/A.O. CP/M 2.2MP/M 

FLOPPY DISK SYSTEMS $5,000 - $12,500 

CSl 800-1600 AUTOMATED OFFICE HARD DISK. 

MULTI-TASKING SYSTEMS $1 2.000 - $30,000 



CRT TERMINALS: INTERTEC HAZELTINE" ADDS 
PRINTERS: QUME NEC" TI810 



VISUAL 200 TELEVIDEO 
CENTRONICS" 



Al SO IN 1HOIHH. 'N(, J Hi 



p^r*»*»»*w* 



CSl TEC A/D, D/A Total Environmental Control Systems for 

* OFFICES * SCHOOLS & COLLEGES 

* HOMES * SECURITY SYSTEMS 

* GREENHOUSES * ENERGY SAVING 



BUSINESS SOFTWARE: FROM $100 - $5,000 

* PAYROLL, G.L.. A/R. A/P, INVENTORY CONTROL * AUTO PARTS INVENTORY 

* MEDCAL ACCOUNTING PACKAGE * INCOME TAX PACKAGE 

* GAS STATION PACKAGE * REALTORS PACKAGE 

EDUCATIONAL SOFTWARE: 
ON APPLE ,TRS80° , PET" &CP/M" BASED SYSTEMS 

JUNIOR AND SENIOR HIGH SCHOOL PROGRAMS 
•MATH 'CHEMISTRY 'PHYSICS # VOCABULARY 

ALSO 

APPLE, PETS, TR8-80 COMMODORE SYSTEMS 

i i »» i . i i i m il I I 1 1 I i 



*m 





■NMMM 



1 1 1 ii i 








L I I I I I 1 .... 1 . 




mmmmmmmmmmmmtm tmmmmm 



CIRCLE 160 ON READER SERVICE CA 



nr 



, ■ > ■. . ■ ■ — ' . ' . ■ . ■ . ...» 






i * ■ • 



TRS-80" SOFTWARE 

PACKER: Automatically edits all or part of your Basic 
program to ease editing, run faster, or save memory. 
Has 5 sections: UNPACK— unpacks multiple statement 
lines into single statements maintaining program 
logic; inserts spaces and renumbers lines for easier 
editing SHORT— shortens your program by editing out 
all REM statements, unnecessary words and spaces. 
PACK— executes UNPACK and SHORT, then packs lines 
into multiple statement lines: maintains program logic. 
RENUM— renumbers program lines including all 
GOTO's. etc. You specify increment MOVE— moves any 
line or block of lines to any new location in the program 
and renumbers lines. Written in machine language: 
supplied on tape in 3 versions for 16K. 32K, and 48K 
For Level II or Disk Basic $29.95 

DISASSEMBLER: Read, write, and copy system tapes. 
Display and modify memory contents. Disassemble 
ROM, 00S. and system tapes into Z-80 mnemonics. 
Search for strings in memory. Much morel! Includes 
32 pages of documentation and information. 
For 16K Level II $19.95 

SYSTEM TAPE DUPLICATOR: Copy your system format 

tapes. Includes verify routine. 

For any Level II $14.95 

CHESDISK: Transfers your copy of Microchess to disk 

for quick and easy access. 

For any Level II Disk system $8.95 

CASSETTE LABEL MAKER: A mini-word processor to 
print cassette labels on a line printer. Includes manual 
and 50 peal-and-stick labels on tractor feed paper. 
For 16K Level II and printer $15.95 

INSTRUCTION MANUALS for any Cottage Software 
original programs available for 20% of program list 
price. Refundable when program purchased. 

TRS-80'" repairs and modifications. Call or write for 

info. MANY MORE items available. Call or write for 

catalog DEALER inquires invited. 

Kansas residents add 3% sales tax. 

Foreign orders in US Currency only. 

Call our 24 hour phone: (316) 683-4811 or write: 

COTTAGE SOFTWARE 

614 N. Harding 
Wichita. KS 67208 

TRS-80 is a trademark of Radio Shack. A Tandy Corporation. 
CIRCLE 161 ON READER SERVICE CARD 




SYNERGISTIC SOFTWARE 

THE DIRECTORY<JVLANAGER 



248 FREE SECTORS 



DIRECTORY MANAGER VERSION 2 

A RUN INTEGER. APPLESOFT. MACHINE LANGUAGE. OREXEC FILES WITH A SINGLE 

KEYSTROKE AFTER BOOTING 

-B LOCK. UNLOCK. LOAD. SAVE. OR DELETE ANY FILE WITH 2 KEYSTROKES. 

-C- LOCK OR UNLOCK ALL FILES WITH A SINGLE COMMAND. 

-D-- UN-DELETE DELETED FILES. 

-E- REARRANGE OR SORT ANY OR ALL OF THE DISKS CATALOG IN SECONDS. 

-F- RENAME FILES USING NORMAL. LOWER CASE. INVERSE. OR FLASHING CHARACTERS. 

-G- TRANSFER ANY BINARY OR TEXT FILES TO ANOTHER DISK WITHOUT KNOWING THE 
FILE PARAMETERS 

_ H _ REVECTOR RESET TO ENTER MONITOR. BASIC. OR RERUN THE MENU PROGRAM WHEN 
RESET IS PRESSED. 

-I- GET THE SPEED OF MACHINE LANGUAGE PLUS THE EASE OF USE OF A MENU. 

SELECT J*£ ^l—U» 

BUY T>ctoi5 ISrouMYS 1D«ree*oru manaq< 





AVAILABLE NOW FROM YOUR lOCAL DFAIER OR SEND CHECK OR INQUIRY TO 
SYNERGISTIC SOFTWARE. 5221 120»h AVE SE . BELLEVUE WA 98006 '2061 641 1917 

Washington stah re side nts add s 3 sales tax CIRC L E 1 90 ON R E A DER SE R VIC E C A R D 



NOVEMBER 1980 



139 



Diet, cont'd... 

done In statements 340 to 380 with 
the aid of a loop from 1 to 8 and the 
CONVERT statement. Here the data 
from the alphanumeric list is picked 
out three figures at a time and 



converted to numbers so that the 
numeric operation of addition can be 
performed. Note also that the start- 
ing location of the data selected from 
the string is a function of the loop 
counter N. This is similar to the use 
made of the loop counter in the TAB 
statement mentioned earlier. 



With the input of the number zero 
the system begins the task of 
providing output. The samples in 
Figure 5 illustrate how this is done. 
The row labeled your totals is simply 
the data stored in list Q(). The 
desired totals are arrived at by 
multiplying the appropriate factors 



10 

20 

30 

40 

50 

60 

70 

80 

90 

100 

110 

120 

130 

140 

150 

160 

170 

180 

190 

200 

210 

220 

230 

240 

250 

260 

270 

280 

290 

300 

310 

320 

330 

340 

350 

360 

370 

380 

390 

400 

410 

420 

430 

440 

450 

460 

470 

480 

490 

500 

510 

520 

530 

540 

550 

560 

570 

580 

590 

600 

610 

620 

630 



SYSTEM UITH ONLY 8K 
FOODS (A$), AND YOUR 



REM ***REM STATEMENTS CAN NOT BE USED ON A 
REM ***SAVES SPACE FOR FACT0RS(F) f LIST OF 
DIM F(14,7) f A*(100)40 r Q(8) 
REM ***L0ADS THE LIST OF FOODS AND FACTORS OFF OF A TAPE*** 
DATA LOAD "FOOD- 
DATA LOAD A*(),F<) 

REM ***ASKS IF YOU WANT A LIST OF FOODS AVAILABLE*** 
INPUT "DO YOU NEED A LIST OF THE AVAILABLE FOODSCY OR N)" Y$ 
IF Y$="Y" THEN 430 

REM ***HERE IS WHERE THE AGE AND SEX CATEGORIES ARE PRINTED*** 

PRINT "THE AGE AND SEX CATAGORIES ARE:" 

PRINT 

PRINT 

PRINT 

PRINT 

PRINT 

PRINT 

PRINT 



OF MEMORY*** 
TOTALS(Q)*** 



CAT. 

1 

4 

7 

10 

13 



NO. 



AGE 
2 

6-7 
12-13 
10-11 

18+ 



SEX 
M/F 
M/F 

M 

F 

F 
OF 



CAT. 
2 



NO. 



INPUT 
INPUT 
PRINT 
PRINT 



5 
8 
11 
14" 
OPERATOR*** 
C 



AGE 
3 

8-9 
14-17 
12-13 



SEX 

M/F 

M/F 

M 

F 



CAT. NO, 

3" 

6" 

9" 

12" 



TO EAT" 

WHEN YOU 



ARE FINISHED." 



REM ***ITEM 
INPUT "ITEM 
REM ***THIS 
IF 1=0 THEN 



"AGE SEX 

" 1 M/F 

"4-5 M/F 

"10-11 M 

"18+ M 

"14-17 F 
REM ***ASKS FOR CHARACTERISTICS 
INPUT "ENTER THE NUMBER OF YOUR CATAGQRY", 

"WHAT IS YOUR WEIGHT IN POUNDS", W 

"HOW MANY MEALS DO YOU WANT TO PLAN OR EVALUATE" ,P 

"ENTER THE NUMBER AND QUANTITY OF EACH FOOD YOU WISH 

"FOR THE NUMBER OF MEALS YOU HAVE SELECTED. ENTER A 
REM ***SENDS OUTPUT TO THE PRINTER*** 
SELECT PRINT 215(90) 
REM ***BEGINS TO PRINT A LIST OF FOODS SELECTED*** 

"NO.";" ITEM ";TAB( 18); "QUANTITY" 

NUMBER AND QUANTITY INPUT HERE*** 
NUMBER", I 

IS A FLAG THAT SENDS YOU TO OUTPUT SECTION WHEN INPUT IS FINISHED*** 

570 
INPUT "NUMBER OF UNITS OF THIS ITEM",U 
REM ***HERE IS WHERE YOUR TOTALS ARE COMPILED*** 
FOR N=1T0 8 

CONVERT STR(A*(I),N*3+14 f 3) TO X 
Q(N)*Q(N)+X*U 
NEXT N 

REM ***THIS PRINTS THE ITEM YOU JUST SELECTED*** 
PRINT I;STR(Ai(I), l f 16) ; TAB(22) ; U 
GOTO 300 

REM ***SENDS OUTPUT TO PRINTER*** 
SELECT PRINT 215(90) 

REM ***THESE STATEMENTS PRINT THE LIST OF FOOD (A*)*** 
PRINTUSING 460 

ZNAME AND QUANTITY CAL. PROTEIN FIBER CALCIUM IRON 

FOR N=1T0 100 

PRINT N;STR(A*(N), l f 16); 

FOR M=1T0 8 

PRINT TAB(21+8*(M-1));STR(A*(N),M*3+14.3); 
NEXT M 

PRINT 

NEXT N 

REM ***THIS RETURNS OUTPUT TO CRT*** 

SELECT PRINT 005(64) 

GOTO 110 

REM ***THIS IS THE BEGINNING OF YOUR OUTPUT*** 
PRINTUSING 590 

* CAL. PROTEIN 

PRINTUSING 610 r Q(l) f Q(2) f Q(3),Q(4),Q(5) f Q(6),Q(7),Q(8) 

PRINT T ° TALS ***** ***** ******* ********** ********** 

ATING E FOR*** UNCTION X MULTIPIES A FACT0R DY Y0UR WEIGHT IN KG AND THE NUMBER OF DAYS YOU ARE E 

640 DEFFNl(X)=INT(P/3*W/2.2*X+.5) 

<F<cr7>) TU8INC &60rFN1(F(C ' 1)> ' FN1<F<C ' 2)) ' FN1(F<C ' 3)) ' FN1 < F(C ^>>rl r Nl(F(C f 5)),FNl(F(C f 6)) r FNl 

660 PRINT RED T ° TALS ***** ********* ??? ********** ««««*« *«««« «««**« *«««« 
DEFFN2(X^INT(X*100? N 5^ Y0UR T ° TALS INT ° * * ° F ™ E DESIRED TOTALS*** 

¥!« l£'» 4 ^? i ; F ^ <Q<6)/FN1(F<C ' 5))) r FN2(Q(7)/F Nl(F(C f 6))) f FN2(Q(8)/FNl(F(C r 7))) 

710 ZPER CENT OF DESIRED tMHMt tttttttt ??? «*«« MMUH tttttttt tttttti 

720 INPUT "DO YOU WANT TO TRY AGAIN(Y OR N)",Y* ******* 

730 REM ***THIS SETS YOUR TOTALS EQUAL TO ZERO*** 

740 MAT Q = ZER 

750 REM ***THIS RETURNS OUTPUT TO CRT*** 

760 SELECT PRINT 005(64) 

770 IF Y$="Y" THEN 200 

780 END 



VIT-B1 VIT-C VIT-A 



FIBER CALCIUM IRON VIT-B1 VIT-C VIT-A 

tttttttttt tttttttttt tttttttttt 



670 
680 
690 
700 



ttttHtt 



Program #2 The Main Program 



140 



CREATIVE COMPUTING 









r 





Wl 




1 * J 



Magazines Make Great Gifts 

Save money, time and aggravation. This holiday season give a magazine gift subscription. 
Entertaining and informative, a magazine gift subscription costs just pennies per day and lasts all 
year. Your though tfulness will be remembered month after month. 

It's easy to do. Just review our selections and fill in the information in the space provided. Then, 
send a check for the proper amount or use your Master Charge or VISA. Upon payment and receipt 
of your order, we'll immediately send a gift card to the receipient announcing your thoughtfulness. 
But hurry, some of the prices listed will be going up Jan. 1. Happy shopping. 



The Runner. The magazine that 
helps you achieve your running 
goals. Plus calendars, race re- 
sults, profiles of the great run- 
ners, tips from contributing 
editors like Bill Rodgers. Save 
$6.00 off single-copy price. 12 
issues, $12.00 

Mother Jones is the award- 
winning national magazine of 
news, politics, and the arts, 
specializing in investigative 
journalism. It's hard-hitting 
and takes a tough look at con- 
troversial issues. 10 issues, 
$15.00 

The Futurist focuses on de- 
velopments and trends that are 
likely to have a major impact on 
the way we will be living in the 
years ahead. Subscription 
price includes membership in 
the World Future Society. 6 is- 
sues, $18.00 

Bicycling covers all cycling ac- 
tivities including how to buy. 
maintain and repair your bike. 
Enables you to get the most fun. 
fitness, adventure and economy 
from bicycle riding. Save $3.50 
off single-copy price. 9 issues, 
$10.00 

Writer's Digest. Use your spare 
time profitably. Writer's Digest, 
the world's leading magazine for 
writers (and aspiring writers), 
tells you what to write and 
where to sell it. Save $6.03 off 
single-copy price. 12 issues, 
$11.97 

New Age Magazine. A monthly 
forum of innovative ideas aimed 
at discoverig holistic and 
humanistic solutions to the 
challenges facing the individual 
as well as the world community. 
Save $3.00 off single-copy price. 
12 issues, $15.00 



NOVEMBER 1980 



Horticulture. Timely informa- 
tion for outdoor and indoor gar- 
deners, reported by leading 
amateur and professional hor- 
ticulturists. Practical tips on 
growing vegetables and fruits, 
saving energy, designing gar- 
dens, and enjoying plants. Save 
$6.00 off single-copy price. In- 
troductory offer. 12 issues, 
$12.00 



Natural History. Published 
monthly by the American 
Museum of Natural History. Ar- 
ticles encompass social and 
natural sciences, including as- 
tronomy, archaeology, anthro- 
pology, geology, and zoology. 
Beautiful color photography. 
Save $3.00 off single-copy price. 
12 issues, $15.00 



Women's Sports. The magazine 
for today's active American 
Woman. Covers women's sports, 
nutrition, fitness, sportswear 
fashion, beauty care and sports 
personalities. Edited for women 
who care about looking and 
feeling great. Save $8.05 off 
single-copy price. 12 issues, 
$9.95 



The New Ms. Unique in the 80s: 
A portable friend for any woman 
trying to change her life, family, 
work or the world. Ideas and 
information for everyone. Save 
40) off regular subscription 
price. Introductory offer: 12 is- 
sues for just $5.97 



Note: Gift cards will not be sent and magazine subscriptions will not begin until payment is 
received. Please send check, money order, or use your VISA or Master Charge to speed 
order. 



Magazine 
Price 


FIRST GIFT 




SECOND GIFT 

Maga7ine 
Price 


Send to 






Send to 


Address 






Address 


City/State 






City/State 


Sign gift card 






Sign gift card 


I 


YOUR NAME 




PAYMENT METHOD 

TOTAI tf 


Your name 






□ Payment enclosed 


Address 






□ Master Chg. □ VISA 


City 








State/Zip 






Card number 


Your signature 

Mail to: The Magazine Co-op, Dept. 
Make check payable to "The Magaz 


Exp date 

CC, 124 N. Austin Blvd., Oak Park, II. 60302 
me Co-op" 



Vegetarian Times. The only in- 
dependently-published maga- 
zine devoted to the practice and 
ideals of vegetarianism. Re- 
cipes, news, profiles, inter- 
views, nutrition, animal rights, 
health and advice. Save 15% off 
single-copy price. 8 issues, 
$12.00 



In Business. The small busi- 
ness magazine bringing you 
professional guidance for suc- 
cessfully operating a human- 
scale enterprise. Profiles of 
"new-age" entrepreneurs, col- 
umns on financing, marketing, 
accounting, new products and 
services. Save 7% off single- 
copy price. 6 issues, $14.00 



Working Papers for a New 
Society. Born of the 60 s social 
movements, challenging for the 
80s. Building the agenda to re- 
structure America. "Honest, in- 
telligent, practical, original, 
and refreshingly readable." 
Save $3.00 off single-copy rate. 
6 issues, $15.00 

American Film. For film and 
video enthusiasts. Go on loca- 
tion, behind the lens and inside 
the scripts with writers, direc- 
tors, producers, performers. 
This special rate — $1.50 off the 
single-copy price — includes 
membership to the American 
Film Institute. 10 issues, 
$16.00 



Parents. The only magazine de- 
voted exclusively to helping you 
be the best parent you can be. 
Monthly advice from experts on 
raising happier, healthier chil- 
dren — from tots to teenagers. 
Save $7.05 off single-copy price 
with this introductory offer. 12 
issues, $7.95 



CIRCLE 218 ON READER SERVICE CARD 

141 



Diet, cont'd... 

by the body weight and the number 
of days worth of meals being 
evaluated. Special function #1 de- 
fined in statement 640 is used for 
this reason. It is important to note 
here that there is no recommended 
daily allotment for fiber. This is the 
reason for the question marks that 
appear in the output. The percent of 
desired totals row is obtained by 
dividing the user's totals by the 
desired totals and converting the 
result to a percent. This is done with 
the help of special function #2 that is 
defined in statement 690. With the 
output in hand, the opportunity is 
presented to try again. If the answer 
is yes, control is shifted to statement 
200 which requires that all of the user 
characteristics be input again. This 
facilitates the program for use by 
several different people at the same 
time as would be desirable in a 
classroom setting. For home use, 
statement 770 might be changed to 
read IF Y$ = "Y" THEN 240. This 
foregoes the need to reenter the 
user's characteristics. 

Reading The Nutritional Report Card 

In Figure 5 you can see what two 
samples of output look like. The first 
is a rather typical day's selection for 
the author, while the second is your 
basic "fast food" meal. Although 
fast-food milkshakes do not usually 
contain milk, using milk and ice 



cream in the place of a shake does 
not lead to great error. From this 
sample output it is easy to see that 
the author practices what he preach- 
es, and that the typical fast food 
meal is loaded with calories and 
protein but shorter on some of the 
other basics. The ideal output would 
have the percentages of all other 
nutrients greater than the percentage 
for calories. Otherwise you could be 
"full," but not full of the proper 
nutrients. 

Such analysis allows the user to 
make corrections at the next meal for 
indulgences committed at a previous 
one. It also allows one to spot dietary 
deficiencies for critical vitamins and 
minerals, and to keep a close count 
of the personal calorie budget. 

For people who exercise, 
the desired number of 
calories may be too low. If 
you are a jogger, you can 
figure an extra 100 calories 
or so per mile traveled. 

For people who exercise, the 
desired number of calories may be 
too low. If you are a jogger, as more 
and more of us are nowadays, you 
can figure an extra 100 calories or so 
per mile traveled, regardless of the 
speed at which you plod along. If, 
however, you are exceptionally se- 
dentary, then you may find the 



NO. ITEM QUANTITY 

8 CHICKEN 1/4LB 1 
12 TUNA 1/4LB 1 

17 MILK UHOLE 1C 2 

18 MILK SKIM 1C 1 
20 MARGARINE 1TSP 6 
25 MAYONNAISE 1TB 2 
31 UHEAT 1 SLICE 6 
45 SHREDDED UHEAT 1 2 
56 CELERY 1C RAU 1 
70 TOSSED SALAD 2 
73 POTATO-MASH 1/2C 2 
77 APPLE RAW 1 1 
80 ORANGE JUICE1/2C 1 

87 COFFEE BLACK 1C 3 

88 BEER 12 0Z 2 
94 COOKIE CHOC CHIP 3 

CAL. PROTEIN 
YOUR TOTALS 2893 1351 



calorie count higher than you would 
require to maintain a stable weight. 
Also, do not forget those African 
tribesmen who eat tons of fiber and 
have very little cancer of the large 
intestine. If your fiber intake is too 
low then you may be asking for 
trouble, not to mention irregularity. 
For pill-poppers, the output shows if 
vitamin supplements are really need- 
ed. 

Possible Modifications 

If you are getting past middle age 
or if you are taking medication to 
control your blood pressure, then the 
nutrients listed here may not be the 
most important ones for you. In 
addition to calories you would prob- 
ably rather keep track of things like 
sodium, cholesterol and triglycer- 
ides. You may even wish to differen- 
tiate between saturated and unsatur- 
ated fats. This will require that you 
go to a source like the one listed in 
this article and obtain the necessary 
information for each of the nutrients 
that are important to your own 
personal health. If you really want to 
get technical, and memory space is 
no problem, you can even keep track 
of the amino-acid profiles for each of 
your protein-bearing items. This is 
being done in some hospitals to- 
day, and it is one way for vegetari- 
ans to be sure that they are getting 
the correct mixture of vegetable 
proteins. If you have gone to the 
trouble of setting up a program such 



FIBER 


CALCIUM 


IRON 


VIT-B1 


VIT-C 


75 


1287 


148 


1457 


141 



DESIRED TOTALS 



►850 



PER CENT OF DESIRED 102 



614 



220 



v?*? 



•m 



811 



159 



102 



145 



1425 



102 



61 



!31 



VIT-A 
213 

51 

418 



NO. ITEM QUANTITY 

2 BURGER PATTY 1/4 2 

17 MILK WHOLE 1C 1 

32 BUN-BURGER/FRANK 2 

74 FRENCH FRY 1/4LB 1 

91 ICE CREAM 2/3C 1 

CAL. PROTEIN 
YOUR TOTALS 1475 794 



DESIRED TOTALS 



950 



PER CENT OF DESIRED 155 



205 



387 



FIBER 


CALCIUM 


IRON 


VIT-B1 


VIT-C 


VIT- 


10 


492 


112 


656 


26 


40 


??? 


270 


34 


47v5 


20 


17 


H7 


182 


329 


138 


130 


235 



Figure 5 



142 



CREATIVE COMPUTING 



Diet, cont'd... 



as this, you may even wish to 
advertise your services to people who 
are interested in this type of informa- 
tion but who for some reason do not 
have access to this type of evaluative 
tool. This would also be an easy way 
to evaluate the foods served in 
institutions to make sure that they 
are up to federal regulations. Per- 
haps the dietician in your local high 
school could use this type of help to 
liven up the academic bill of fare. I 
have tried adding cost as a factor, 
but with seasonal items, specials 
and inflation this has not proved 
practical for anything other than an 
educational simulation. Further pos- 
sibilities are limited only by the 
user's imagination, due to the fact 
that eating is one habit we all must 
indulge in for as long as the human 
engine is left on. 

References 

1 . IBM advertisement, Datamation Oct. 79. p. 78. 

2. Bowes and Church, Food Values of Portions 
Commonly Used, 11th ed. (J.B. Lippincott and 
Co., Philadelphia, 1970). 

Z. tomes Sca\a, The Physiological Effects of 
Dietary Fiber, ACS Symposium Series #15, 
American Chemical Society, Washington D.C., 
1975). pp. 325-335. 



Tape and Disk Version for TRS-80 

A different version of this 
program, also called Diet, is 
available for the TRS-80 (Level II, 
16K) from Creative Computing 
Software. It analyzes four groups 
of basic substances: protein, 
lipids, calories and carbohydrates 
instead of the seven mentioned in 
the article. It is "menu" driven and 
screen oriented and allows for up 
to four meals per day. It indicates 
the effect of a daily diet on body 
weight and nutrition. 

Three other programs are on the 
same tape (or disk): Pollute, Rats 
and Malaria. Order "Ecology Sim- 
ulations— -2, " CS-3202 for cassette 
tape or CS-3502 for floppy disk. 
Price is $25.95 postpaid for either 
one from Creative Computing 
Software, P.O. Box 789-M, Morris- 
town, NJ 07960. □ 




oo° 



oo. 



THfS IS HO OKmtKi 

THE lADAUTE IN 
tfl$H7BCHNOU>8»r 

AS£wS£OfA*V£ 

isinoflc**- 



©Creative Computing 



NOVEMBER 1980 




Strategy Games 

Cassette CS-4003 $11 .95 4 Programs Requires 1 6K Apple II or Apple II Plus 





Blockade. Build a wall to trap your opponent, UFO. Use lasers, warheads or guns to des- 
but don't hit anything. troy an enemy spacecraft. 




SCORE *3 



QUEST \0* % 



MHICH TEAM MAS DEFEATED IN THE 1977 



YANKEES 
OAKIAMO A'S 
L A DODGERS 

CIHCINATTI REPS 



Skunk. A 2-player strategy game played Genius. A fast-moving trivia quiz with scores 
with dice, skill and luck. of questions. 



Brain Games 

Cassette CS-4004 $11.95 7 programs Requires 16K Apple II or Apple II Plus 



1 






i. 








2 






3 




C 






B 




D 




R 








Dodgem. Be the first to move all your pieces Nuclear Reaction. A game of skill, fast 
across the board in this intriguing strategy decisions and quick reversals of position, 
game. 





Parrot. A Simon-type game with letters and Midpoints and Lines. Two colorful graphics 
tones. Dueling digits is a version with num- demonstrations. Tones lets you make music 
bers. and sound effects. 



Strategy and Brain Games are also available on one 32K Apple disk (CS-4502) for 
$24.95. Add $2.00 shipping per order. Send to Creative Computing Software, P.O. Box 
789-M, Morristown, NJ 07960 Or call 800-631-81 12 



143 






r 




TRcopy and 
the Pirates 



Stephen Kimmel 



Cassette storage of data and programs 
has always been a big problem. I don't 
know how many cassette programs IVe 
purchased that were difficult or impossible 
to load. IVe lost indexes and couldn't 
remember what was on which tape. IVe 
had mechanical failures of the cassette 
boxes. My kid even chewed a hole in one 
tape, destroying Wumpus. Then there was 
the frustration of loading a program into 
the machine, with everything apparently 
all right, little stars Hashing and every- 
thing, only to discover that what I had was 
a whole lot of garbage. Machine-language 
tapes are the worst of the lot. I could never 
figure out how to make backup copies so 
that 1 wouldn't be out $20 if there was a 
bolt of lightning somewhere in the state. 

TRcopy seemed too good to be true. It 
seemed like a godsend. 

TRcopy is a machine language 
program for the TRS-80 by Data/Print 
Publishing of Fargo, NT). Their phone 
number is 1-800-437-4144. This program 
displays the information coming off the 
cassette as it comes off the tape, instantly 
telling you whether you are getting a good 
load or not. You can also tell which tape it 
is you are loading in. That's only the 
beginning of what TRcopy does. 

After loading the program into the 
computer, you can verify that the com- 
puter understands the tape the same way 



Stephen Kimmel. 4756 S. Irving ton Place, Tulsa, OK 

74135. 



twice. This feature checks the data, byte 
for byte, against the program stored in 
memory. Then it tells you whether the two 
match with an appropriate good or bad 
message. 

Having verified that the program is in 
memory correctly, you can then copy it 
back onto another tape and verify it 
against the memory. If the new tape and 
the old tape both verify against the same 

That the programmer of 
TRcopy felt the need to 
build in a self-defense 
mechanism says some- 
thing very interesting 
about the program . . . 
and about the state of the 
software industry in 
general. 

memory contents, then they must be 
identical. And they are. Except that the 
new tape is probably better than the 
original, having been subjected to fewer 
magnetic fluxes and whatever. 

TRcopy is easy to use. Their instruc- 
tion book is clear and easy to understand 
and has a lot of other useful information in 
it. And all the Data/ Print folks want for 
TRcopy is (gasp!) $39.95. It does every- 
thing they said it would do, but $39.95? 

There is a problem. The program 
loaded in under TRcopy can't be executed. 



You have to dump TRcopy and load the 
program in again to execute it. 

What I wanted was a program that 
would give me visual confirmation of a 
good load and then allow me to run the 
program. TRcopy wasn't worth the money 
to me so I sent it back for my refund. 
(There are a number of similar programs 
— Duplik, SYSCOP, COPSYS, Clone 
and others. 1 think the besl dollar value is 
probably Duplik, which comes with a 
Renumber program for $8.) 

Musings 

The instruction book stated that 
TRcopy couldn't be used to copy itself. 
Hmmmm. Of course I tried and they're 
right. If you try, the program auto- 
matically dumps itself. I'm sure some 
machine language whi/ could figure some 
means of defeating the defense mechanism 
but it was beyond me. 

That the programmer of TRcopy felt 
the need to build in a self-defense 
mechanism says something very inter- 
esting about the program . . . and about the 
state of the software industry in general. 
Let's face it. TRcopy and the others, 
Duplik, SYSCOP, COPSYS, Clone, etc. 
are the computer world's software 
answer to the Xerox machine. They are 
programs designed to violate copyright 
laws. 

Everyone knows that the cost of 
software is high. You could easily spend 



144 



CREATIVE COMPUTING 



four times the cost of the hardware on 
computer programs that are only 
mediocre. 

With TRcopy, it is possible to pool 
your resources. Ten people, say, chip in $2 
apiece and buy one program. Then they 
take their handy dandy duplicating 
program and make nine copies. Everyone 
has a perfectly good, perhaps even better, 
copy of the original. Let's go whole hog. 
Let's make ten copies, send the original 
back and demand our money back. And 
since we still have TRcopy and the 
program we can make ten more copies and 
sell them. Or a hundred. Or a thousand. 
Suddenly there are a zillion copies of the 
$20 program running around. They aren't 
cheap inferior copies. They are cheap 
superior copies. They are also highly 
illegal. 

I decided to try a similar tactic. 1 took 
my TRcopy to a local Radio Shack. With 
the manager's help, I managed to copy 



With the manager's help, 
I managed to copy nearly 
$200 worth of software 
onto a $2 cassette tape 
inside of twenty minutes. 



nearly $200 worth of software onto a $2 
cassette tape inside of twenty minutes. 
TRcopy, thus, becomes an interesting 
means of shoplifting. It is also curious in 
that the local Radio Shack isn't out 
anything. They've made a $2 sale, where 
they probably wouldn't have made the 
$200 sale. 

Perhaps TRcopy should be illegal. 
Still, the program is irrelevant. (The Xerox 
machine isn't the counterfeiter.) The 
duplicating programs are inevitable and 
the fact it can be done means that it will be 
done. TRcopy is only the most expensive 
of the group. 

It is a mark of the maturity of our 
industry that we have finally produced our 
own pirate industry. Have we developed a 
group of programs capable of destroying 
the fabric of the software industry? 
Perhaps. The marginal houses with one 
terrific program will suffer the most. 
Unfortunately, the better their program, 
the more they'll suffer. The one sure way to 
eliminate this sort of thing is to make 
software so cheap that there is no incentive 
to stealing it. But that would leave no 
incentive to develop software worth 
stealing or buying. 

Remember the old Terry and the 
Pirates comic strip? No matter how strange 
the machinations, the forces of good 
always triumphed eventually. With our 
current pirate situation, I have a feeling the 
forces of good will come out on the short 
lend this time. D 

NOVEMBER 1980 



Computer Store 
of the Month 



Hundreds of computer stores sell Creative Computing Magazine, Press 
books and software nationwide. We believe that the contributions made by 
these stores to their communities should be recognized and applauded. In this 
and future issues of Creative Computing Magazine, we'll spotlight some stores 
which deserve attention for their salesmanship, creativity and community ser- 
vice. 

Home Computer Center Inc. open- 
ed it's first store in July 1977 in Vir- 
ginia Beach, Va and opened a second 
shortly after in Newport News, Va. 
Both outlets experienced fast growth 
by offering a wide selection of per- 
sonal computers, a full line of per- 
sonal computer software, complete li- 
braries of computer literature, and 
support. 

Home Computer Center Inc. has 
expanded into several different 
areas. The first includes a full line of 
terminals and communication equip- 
ment to meet the needs of local busi- 
ness; additionally, they have esta- 
blished a division which will handle 
products for the education field. They 
have also started to produce their mi- 
cro-hardware including a calendar 
clock and the Apple Butler for use 
with the Apple Computer. 

Home Computer Center sells Crea- 
tive Computing magazine, books and 
software. If you are in Virginia you 
may want to look up one of the outlets 
located at 2927 Virginia Beach Blvd., 
Virginia Beach or 12588 Worwich 
Blvd., Newport News. You will find 
the staff knowledgable, helpful and 
friendly. 




The Shairs, owners of The Computer Corner of White Plains, the featured 
store of the month in July, 1980, sent this announcement. Congratulations, 
Shairs. 

Order No. 3 _ 

J4J & Mo~i.l SL 



41 COIBY AVENUf 
RYt, N€W YORK 



taw 



Department 



Kiddies 



GREENWICH HOSPITAL 



Dei>v«rvDmt« August 29,1980 



Perryridge Road 



FOB. 



Greenwich, Conn 



Terms 



Net 9 months 



Greenwich, Connecticut 



Via 



Stork ExpresB 



MODEL 



QUANTITY 



DAVID RYAN 
SHAIR 



(1) 



DESCRIPTION AND COLOR 



Healthy Infant (Male) 

Rosy Complexion 

Capable of Loud Noises 






* 



Thu is to certify that the model described herein was produced in accordance with the Fair Labor Laws applicable thereto 



SIZE 



PRICE 



6 lbs. 10 oz. 
20 inches 



Priceless 



HAL & 

HARRIET 



BUYERS 



<%A& ^ 




j^V-ESZSSJ^ 



1^<\r\ 



west 






f^&m 



- iU J, j lW* **»«.A ft n^W»lM M: 




David B. Suits 



I sometimes need to convert numbers 
from one base to another — usually binary 
or hex to decimal, or else the other way 
around. Sometimes I need to know the 
binary equivalent of a hex number or vice- 
versa. Programs to convert numbers from 
one base to another are not difficult to 
write, but they are limited. 

Get out your base conversion pro- 
gram and find the decimal equivalent of 
3FCA(hex). No problem, you say? Okay, 
then. What is the decimal equivalent of 
17F 4 (hex) + 1 1001 1 (binary)? What is the octal 
equivalent of 15(hex) * 256(decimai) - 
1 101 lOl(binary)? If your base conversion 
program is anything like my old one, you 
probably had to use pencil and paper — 
and maybe a calculator as well — on those 
last two problems. Perhaps you converted 
all the numbers to some common base 
(probably decimal), performed the neces- 
sary arithmetic, and then converted the 
result to the desired base. But it is silly to 
waste your time on each of these steps if 
your computer can do it all for you. 

The "Base Arithmetic" program will 
perform addition, subtraction, multiplica- 
tion and division of integer values (positive 
or negative) on simple or complicated 
expressions (where the numbers may be 
expressed in binary, octal, decimal or 
hexadecimal), and print out the result in 
the base of your choice. (For the purposes 
of formatting the output, the expression 
must evaluate to a number between -65535 
and +65535, inclusive.) 



David B. Suits, General Studies, Rochester Institute of 
Technology, Rochester, NY 14623. 



The idea for the parser which this 
program uses is based upon the "people 
parser" described by J. W. Garson, 
"People Programming," Creative Com- 
puting (April, 1979). But while Garson's 
parser parsed from right to left, mine goes 
the other way. It is very forgiving about 
mismatched parentheses, and if a fatal 
error is found, the program tries to be 
informative about it. 

Programs to convert 
numbers from one base 
to another are not dif- 
ficult to write, but they 
are limited. 

The program uses two arrays to 
simulate two first-in-last-out stacks — a 
number stack NS( ) and an operator stack 
OS$( ) — plus a stack pointer for each: N P 
and OP. Each time the parser encounters a 
number in the input expression, it converts 
it to decimal, pushes it onto the number 
stack and increments the number stack 
pointer. If an operator is found, it decides 
whether it is a binary operator (+, -, *, or / ) 
or a unary operator (+ or -). If it is a unary 
operator is is applied to the number which 
follows. But if it is a binary operator (or a 
parenthesis) it is either pushed onto the 
operator stack or else applied to the top 
two numbers on the number stack. 
Whether the operator is pushed onto the 
stack or applied to the numbers on the 
number stack is determined by the 



strength" of the operator as compared to 
the strength of the operator (if any) at the 
top of the operator stack. Following 
Garson, the operator strengths are as given 
in lines 72-80 of the program listing. (The 
right parenthesis is not included in the 
table of strengths because, should it be 
encountered in the input expression, the 
operator on top of the stack is immediately 
applied to the top two numbers on the 
number stack.) These values are held in the 
array S(l) through S(7), where the indices 
are calculated by subtracting 40 from the 
ASCII value of the operator. If the 
strength of the operator discovered in the 
input expression is less than the operator 
(if there is one) on top of the operator 
stack, then the top two numbers on the 
number stack are popped off the stack, the 
operator on the operator stack is popped 
off and applied to the numbers, and the 
result is pushed back onto the number 
stack. The procedure is repeated until the 
strength of the operator from the input 
expression is not less than the strength of 
the operator on top of the operator stack, 
in which case the new operator is pushed 
onto the operator stack. 

During the parsing process, the buffer 
pointer (BP) keeps track of the position of 
the present character being examined in 
the input expression, 1$. The value of BP 
thus allows an error message to point to the 
specific place in the input expression where 
an error is first encountered. 

The parser can be defeated, if you try. 
It is not fully idiot proof. 

Necessary run time instructions are 
given in the listing. 



146 



CREATIVE COMPUTING 



Arithmetic, cont'd 



READY 

LQN)"aONVRT" :RUN30 

BASE ARITHMETIC BY DAVID B. SUITS (JULY, 12 A.L.) 

INSraUCTIONS: 

SPECIEY THE BASE FOR THE FINAL , EVALUATED EXPRESSION. 

FOLLOW THAT WITH A SEMICDLON * ; ' . 

USE ( f ) , + r -f * AND / AS USUAL, BUT PRECEDE EACH 
NUMBER WITH ITS BASE OODE SYMBOL (DEFAULTOECIMAL) . E.G. : 

H; 3 + (B110 * H-D) 

WILL YIEID THE HEX EQUIVALENT OF DECIMAL 3 PLUS THE 
PRODUCT OF BINARY 110 TIMES NEGATIVE HEX D. 

IF THERE IS NOTHING AFTER THE SEMICOLON, THE RESULTS OF 
THE PREVIOUS INPUT WILL BE CONVERTED TO THE DESIRED BASE. 

INTEGERS CNLY, PLEASE. 

BASE CODE SYMBOLS: 

B = BINARY OR Q * OCTAL D = DECIMAL (DEFAULT) H ■ HEX 

>H;H7000/2 
HEXADECIMAL: 3800 

>H; ( H 7000 / 2 
HEXADECIMAL: 3800 

>; 

DECIMAL: 14336 

>B;B111011+255 

BINARY: 00000001 00111010 

>H; 

HEXADECIMAL: 013A 

>B;HFFFF-4096)/2 

BINARY: 01110111 11111111 

>; 

DECIMAL: 30719 

>D; (HFFF-4096)/2 
DECIMAL: - 1 

>; (HFFFF-4096)/2 
DECIMAL: 30719 

>H 

ERROR! EXPECTING SEMICOLON 

>2*((B1101+HAF)/16) 

ERROR! EXPECTING BASE CODE SYMBCL 

>;2*((B1101+HAF)/16 
DECIMAL: 22 

>H;4096 
HEXADECIMAL: 1000 

>B; 

BINARY: 00010000 00000000 

>Q; 

OCTAL: 010 000 

>H;Q010000 
HEXADECIMAL: 1000 

>H; 32049- (H7000/4 
HEXADECIMAL: 6131 

>B; 

BINARY: 01100001 00110001 

>D;5A-H20 

ERROR! INVALID CHARACTER FOR BASE 10 

>;H5A-H20 
DECIMAL: 58 



APPLE II TRS-80 

® QUALITY ® 

DISK SOFTWARE 




matter charge 



D HOME FINANCE PAK I: Entire Series $49.95 ®(D 

□ BUDGET: The heart of ■ comprehensive home finance system. Allows user to define up to 20 budget 
items. Actual expense input can be by keyboard or by automatic reading of CHECKBOOK II files. Costs are 
automatically sorted and compared with budget. BUDGET produces both monthly actual/budget/variance 
report and a year-to-date by month summary of actual costs. Color graphics display of expenses. . . $24.95 

□ CHECKBOOK II: This extensive program keeps complete records of each check/deposit. Unique check 
entry system allows user to set up common check purpose and recipient categories. Upon entry you select 
from this pre defined menue to minimize keying in a lot of data. Unique names can also be stored for com 
pleteness. Rapid access to check files. Check register display scrolls for ease of review. 40 column print 
out. Up to 100 checks per month storage. Files accessible by BUDGET program $19.95 

□ SAVINGS: Allows user to keep track of deposits/withdrawals for up to 10 savings accounts. Complete 
records shown via screen or 40 column printer $14.95 

O CREDIT CARD: Keep control of your cards with this program. Organizes, stores and displays purchases, 
payments and service charges. Screen or 40 column printer display. Up to 10 separate cards $14.95 

D UNIVERSAL COMPUTING MACHINE: $39.95 ®® 

A user programmable computing system structured around a 20 row x 20 column table. User defines row 
and column names and equations forming a unique computing machine. Table elements can be multiplied, 
divided, subtracted or added to any other element. User can define repeated functions common to a row or 
column greatly simplifying table setup. Hundreds of unique computing machines can be defined, used, stored 
and recalled, with or without old data, for later use. Excellent for sales forecasts, engineering design analysis, 
budgets, inventory lists, income statements, production planning, project cost estimates in short for any 
planning, analysis or reporting problem that can be solved with a table. Unique curser commands allow you 
to move to any element, change its value and immediately see the effect on other table values. Entire table 
can be printed by machine pages (user defined 3-5 columns) on a 40 column printer. 

□ COLOR CALENDAR: $19.95® 

HIRES color graphics display of your personal calendar. Automatic multiple entry of repetitive events. Re 
view at a glance important dates, appointments, anniversaries, birthdays, action dates, etc. over a 5 year per 
iod. Graphic calendar marks dates. Printer and screen display a summary report by month of your full text 
describing each day's action item or event. Ideal for anyone with a busy calendar. 

D BUSINESS SOFTWARE: Entire Series $159.95 ®(D 

^2 MICROACCOUNTANT: The ideal accounting system for the small business. Based on classic T accounts 
and double entry bookkeeping, this efficient program records and produces reports on account balances, 
general ledger journals, revenue and expenses Screen or 40 column printer reports Handles up to 1000 
journal entries per month up to 300 accounts. Includes a short primer in Financial Accounting. $49.95 

□ UNIVERSAL BUSINESS MACHINE: This program is designed to SIMPLIFY and SAVE TIME foi the 
serious businessman who must periodically Analyze, Plan and Estimate. The program was created using our 
Universal Computing Machine and it is programmed to provide the following planning and forecasting tools. 

CASH FLOW ANALYSIS PROFORMA BALANCE SHEET SOURCE AND USE OF FUNDS 

PROFORMA PROFIT & LOSS SALES FORECASTER JOB COST ESTIMATOR 

Price, including a copy of the Universal Computing Machine S89 95 

QBUSINESS CHECK REGISTER AND BUDGET: A combination of our CHECKBOOK II and BUDGET 
programs expanded to include up to 50 budgetable items and up to 500 checks per month. Includes bank 
statement reconciliation and automatic check search (48K) S49.95 

□ ELECTRONICS SERIES: Entire Series $159.95 A 

□ LOGIC SIMULATOR: SAVE TIME AND MONEY Simulate your digital logic circuits before you build 
them. CMOS. TTL, or whatever, if it's digital logic, this program can handle it. The program is an inter 
active, menu driven, full fledged logic simulator capable of simulating the bit time by bit time response of a 
logic network to user specified input patterns. It will handle up to 1000 gates, including NANDS, NORS, IN 
verters, FLIP FLOPS. SHIFT REGISTERS, COUNTERS and user defined IviACROS Up to 40 user defined, 
random, or binary input patterns. Simulation results displayed on CRT or printer. Accepts network des 
enptions from keyboard oi from LOGIC DESIGNER for simulation S89.95 

□ LOGIC DESIGNER: Interactive HI-RES Graphics program for designing digital logic systems. A menu 
driven series of keyboard commands allows you to draw directly on the screen up to 15 different gate types, 
including 10 gate shape patterns supplied with the program and 5 reserved foi user specification. Standard 
patterns supplied are NAND. NOR. INVERTER. EX OR, T FLOP. JK FLOP. D FLOP, RS FLOP. 4 Bit 
COUNTER and N BIT SHIFT REGISTER. User interconnects gates |ust as you would normally draw usiny 
line graphics commands. Network descriptions for LOGIC SIMULATOR generated simultaneously with the 
CRT diagram being drawn $89.95 

□ MATHEMATICS SERIES: Entire Series $49.95 A 

□ STATISTICAL ANALYSIS I This menu driven program performs SIMPLE LINEAR REGRESSION analy 
sis, determines the mean, standard deviation and plots the frequency distribution of user supplied data sets 
Printer. Disk. I/O and edit routines included (32K mm.) S19 95 

□ NUMERICAL ANALYSIS: HIRES 2 Dimensional plot of any function. Automatic scaling. At your option, 
the program will plot the function, plot the INTEGRAL, plot the DERIVATIVE, determine the ROOTS 
find the MAXIMA and MINIMA and list the INTEGRAL VALUE S19.95 

[~ | MATRIX: A general purpose, menu driven program for determining the INVERSE and DETERMINAN1 of 
any matrix, as well as the SOLUTION to any set of SIMULTANEOUS LINEAR EQUATIONS Disk I/O for 
data save. Specify 55 eqn. set (48K) or 35 eqn. (32K) $1995 

□ 3-D SURFACE PLOTTER Explnre the ELEGANCE and BEAUTY of MATHEMATICS hy creating HIRES 
PLOTS of 3 'dimensional surfaces from any 3 variable equation Disk save and recall routines for plots Menu 
driven to vary surface parameters. Hidden line or transparent plotting S19.95 

D ACTION ADVENTURE GAMES: Entire Series $29.95 A 

^ RED BARON: Can you outfly the RED BARON? This fast action game simulates a machine gun DOG 
FIGHT between your WORLD WAR I Bl PLANE and the baron's. You can LOOP. DIVE. BANK or CLIMB 
in any one of 8 directions and so can the BARON in HIRES graphics S14 95 

□ BATTLE OF MIDWAY: You are in command of the U.S.S HORNETS' DIVE BOMBER squadron Your 
targets are the Aircraft carriers, Akagi, Soryu and Kaga. You must fly youi way through ZEROS and AA 
FIRE to make your DIVE BOMB run. In HIRES graphics S14.95 

OSUB ATTACK: It's April. 1943. The enemy convoy is headed foi the CORAL SEA Your sub. the 
MORAY, has just sighted the CARRIERS and BATTLESHIPS Easy pickings But watch nut for the DE 
STROYERS they're fast and deadly In HIRES graphics S14.95 

2 FREE CATALOG All programs are supplied on disk and run un Apple II w/Disk & Applesoft ROM Card & 
TRS-80 Level II and require 32K RAM unless otherwise noted. Detailed instructions included. Oidersship 
ped within 3 days. Card users include card number Add SI 50 postage and handling with each order. 
California residents add 6'/?% sales tax. 

Make checks payable to: 

SPECTRUM SOFTWARE 

P.O. Box 2084 142 Carlow, Sunnyvale, CA 94087 
For phone orders - 408-738-4387 
DEALER INQUIRIES INVITED 




NOVEMBER 1980 



147 



CIRCLE 185 ON READER SERVICE CARD 



tic, cont'd... 

The program was written in Compu- 
color Disk Basic 8001 V6.78 on my Com- 
pucolor II and, as it stands, requires a bit 
over 9K RAM, not counting Basic itself. 
(This can be reduced considerably by 
deleting the REMarks and blank lines.) 
Multiple statements on a line are separated 
by colons. Because of round -off errors 
with the ABS and INT functions of Basics 
with floating point routines, this program 
occasionally converts a number into a 
string expression with the STR$ function 
and then converts it back to a numeric 
expression with the VAL function. (Lines 
1540 and 1670.) If your Basic provides for 
integer-only arithmetic, then you needn't 
bother with such conversions. 

The program should require only minor 
alterations for any other Microsoft Basic. 
Specifically, the various PLOT statements 
(except for line 20) are color commands, 
so if you are working in black and white 
you can omit them. □ 

READY 
LIST 

9 REM Set colors. 

10 PLOT 6,6 
18 

19 REM Regular character height. Flag bit off. 
Scroll mode. Erase screen. 

20 PLOT 15,29,27,11,12 
29 

30 PRINT "BASE ARITHMETIC "; 
39 

40 PLOT 23:PRINT "BY DAVID B. SUITS "; 

41 REM General Studies 

42 REM Rochester Institute of Technology 

43 REM Rochester, NY 14623 
44 

50 PLOT 19:PRINT "(JULY, 12 A.L.)" 
59 

60 REM 

61 REM NS( )... Number Stack. Each time a number is found in 

62 REM input string, it is pushed onto this stack. 

63 REM NP Number stack Pointer. Points to most recent 

64 REM entry to Number Stack. 

65 REM OS$( ).. Operator Stack. Operators frcm input 

66 REM string are pushed onto this stack. 

67 REM OP Operator stack Pointer. 

68 REM S( ) ....Strengths of operators, where the indices are 

69 REM determined by subtracting 40 from the ASCII 

70 REM values of the operators. Thus: 

71 REM 

72 REM OPERATOR ASCII S(i) STREN3TH 

73 REM ( 40 

74 REM xxx xxx 1 xxx 

75 REM * 42 2 3 

76 REM + 43 3 1 

77 REM xxx xxx 4 xxx 

78 REM - 45 5 2 

79 REM xxx xxx 6 xxx 

80 REM / 47 7 4 

81 REM 

82 REM BP Buffer Pointer. Points to position in input 

83 REM string of character being scanned. 

84 REM C$ Present Character being scanned. 

85 REM U$ Unary operator (+ or -) . if there is no 

86 REM unary operator to apply, then U$="I". 

87 REM E Error flag (see subroutine at 1400) in case 

88 REM a numerical expression contains an invalid 

89 REM character. 

90 REM B Base 2, 8, 10 or 16 of a number in the input 

91 REM expression. 

92 REM BASE BASE 2, 8, 10 or 16 of the final, evaluated 

93 REM expression. 

94 REM L Length of input string. 

95 REM 
96 

99 REM Clear some string space 

100 CLEAR 100 
108 



109 

110 
118 
119 
120 
127 
128 
129 
130 
137 
138 
139 
140 
149 
150 
160 
170 
180 

190 
200 
210 
220 
230 
240 
250 

260 

270 
279 
280 
289 
290 

297 
298 



REM Limit of 64 operators and 64 numbers. 
Surely that's sufficient! 

DIM OS$(64) ,NS(64) 

REM Set strengths of operators 

FOR J= 0TO 7.-READ S(J):NEXT :DATA 0,0,3,1,0,2,0,4 

REM String of zeros for pretty-printing the output. 
REM Hexadecimal string used when changing bases. 
Z$= "0000000" :HX$= "0123456789ABCDEF" 



PRINT : PRINT "INSTRUCTIONS:": PRINT 



PRINT " SPECIFY THE BASE FOR THE FINAL, EVALUATED EXPRESSION. 

PRINT " FOLLOW THAT WITH A SEMICOLON » f ■ ." 

PRINT " USE (,),+,-,* AND / AS USUAL, BUT PRECEDE EACH" 

PRINT " NUMBER WITH ITS BASE CODE SYMBOL 

(DEFAULT=DECIMAL) . E.G. : " 

PRINT 

PRINT " H; 3 + (B110 * H-D)" 

PRINT 

PRINT " WILL YIELD THE HEX EQUIVALENT OF DECIMAL 3 PLUS THE" 

PRINT " PRODUCT OF BINARY 110 TIMES NEGATIVE HEX D." 

PRINT 

PRINT " IF THERE IS NOTHING AFTER THE SEMICOLON, 

THE RESULTS OF" 

PRINT " THE PREVIOUS INPUT WILL BE CONVERTED 

TO THE DESIRED BASE." 

PRINT : PRINT " INTEGERS ONLY, PLEASE." 

PRINT :PL0T 18:PRINT "BASE CODE SYMBOLS:": PRINT 

PRINT "B ■ BINARY O OR Q = OCTAL 
D = DECIMAL (DEFAULT) H ■ HEX" 



REM 



Each input starts here. 



299 
300 
309 
310 
320 
330 
340 
350 
360 
368 
369 
370 
397 
398 
399 
400 
409 
410 
417 
418 
419 
420 
427 
428 
429 
430 
438 
439 
440 
448 
449 
450 
458 
459 
460 
470 
480 
490 
500 

508 
509 
510 
517 
518 
519 
520 
528 
529 
530 
538 



REM Zero the Buffer & stack Pointers. Set Error flag=0. 
BP= 0:NP= 0:OP= 0:U$= "!":E= 

PRINT :PLOT 21:PRINT ">";:PLOT 18:INPUT "";I$:L= LEN (1$) 

GOSUB 1300: IF C$= ";"THEN BASE= 10:GOTO 420 

IF C$= "H"THEN BASE= 16:G0TO 400 

IF C$= "D"THEN BASE= 10:GOTO 400 

IF C$= "0"OR C$= "Q"THEN BASB= 8: GOTO 400 

IF C$= "B"THEN BASE= 2:G0TO 400 

REM No base code symbol found & not default, so Error. 
GOTO 1700 

REM If end of input has been reached at this point, 

REM then there's an Error. 

IF BP= LTHEN BP= BPf l:GOTO 1710 

GOSUB 1300: IF C$< > ";"THEN 1710 

REM If end of input string has been reached after the ' ; ' 
REM then give results of last evaluation but in new base 
IF BP= LTHEN NP= 1:GOTO 800 

REM Now that we have the output base code symbol (or 

REM default to decimal) , parse the rest of the expression, 

IF BP= LTHEN 800:REM All done! 

REM Check for Unary operator + or - for def ault=decimal . 
GOSUB 1300.-IF C$= "+"OR C$= "-"THEN U$= C$:B= 10:GOTO 550 

REM If no base code symbol, then assume decimal. 
IF C$= > "0"AND C$< = "9"THEN B= 10:GOTO 550 

REM There must be either "("or base code symbol. 

IF C$= "B"THEN B= 2:GOTO 520 

IF C$= "0"OR C$= "Q"THEN B= 8:G0T0 520 

IF C$= "D"THEN B= 10:GOTO 520 

IF C$= "H"THEN B= 16:GOTO 520 

IF C$= "("THEN OP= OP+ l:OS$(OP)= C$:GOTO 430:REM 

Push "(" onto stack. 

REM Error ! 
GOTO 1700 

REM If end of expression is reached then user did not 

REM enter a number. 

IF BP= LTHEN BP= BP+ l:GOTO 1720 

REM Check for Unary operator. 

GOSUB 1300: IF C$= "+"OR C$= "-"THEN U$= C$:GOTO 520 



148 



CREATIVE COMPUTING 



539 REM Check for invalid character. 

540 IF C$< "0"OR (C$> "9"AND (C$< "A"OR C$> "F"))THEN 1720 
548 

549 REM 



550 
560 
570 

577 

578 

579 

580 

590 

597 

598 

599 

600 

608 

609 

610 

620 

630 

637 

638 

640 

650 

658 

659 

660 

668 

669 

670 

676 

677 

678 

679 

680 

690 

698 

699 

700 

797 

798 



Get the number one character at a time & store as N$ 

N$= "" 

N$= N$+ C$:IF BP= LTHEN GOSUB 1400:GOTO 800 

GOSUB 1300: IF C$= > "0"AND (C$< = "9"OR (C$= > "A"AND 

C$< = "F"))THEN 560 

REM Convert the number (now held as N$) into decimal and 
REM push it onto the Number Stack. 

GOSUB 1400: IF ETHEN 1740 :REM EO0 if there's an Error. 
IF C$< > ")"THEN 640 

REM ")" is scanned, so until Operator Stack is empty 
REM or has "(", apply last operator to top 2 numbers. 
IF 0P> 0AND OS$(OP)< > "("THEN GOSUB 1600:GOTO 600 



REM If top of Operator Stack has 
IF OS$(OP)= "("THEN OP= OP- 1 
IF BP*= LTHEN 800 
GOSUB 1300:GOTO 590 



(" r then pop it off, 



n /* 



REM Now we're expecting an operator. 

IF C$< > "/"AND C$< > "*"AND C$< > "+"AND C$< > "-"THEN 1730 

IF 0P= 0THEN 690 

REM Get strength of operator on top of Stack. 
Sl= S(ASC (OS$(OP))- 40) 

REM Get strength of operator being scanned. 
S2= S(ASC (C$)- 40) 

REM If strength of SI => strength of S2 then apply 
REM operator on Stack to top 2 numbers on Number Stack 
REM before pushing new operator onto Operator Stack. 
IF Sl= > S2THEN GOSUB 1600:GOTO 650 
OP= OP+ l:OS$(OP)= C$ 

REM Now go back for another number. 
GOTO 430 



REM 



Print out the final expression. 



799 REM First check for Errors. 

800 IF ETHEN 1740 :REM EO0 if there's an Error. 
808 

809 REM Pop any "(" off Operator Stack. 

810 IF OS$(OP)= "("THEN 0P= OP- l:GOTO 810 
820 IF NP= 0THEN BP= BP+ l:GOTO 1720 

827 

828 REM If there's still an operator but only one number, 

829 REM then there's an Error. 

830 IF NP= 1AND 0P= 1THEN BP= BP+ l:GOTO 1720 

837 

838 REM While there are operators left, apply them in turn 

839 REM to the top 2 numbers on the Number Stack 

840 IF OP> 0THEN GOSUB 1600:GOTO 800 
847 

848 REM Get the absolute value of the number on the Number 

849 REM Stack. Use the STR$ function to avoid round-off errors. 

850 N= VAL (Sm$ (ABS (NS(1)))) 
858 

859 REM Now convert the number to desired output base. 

860 R$= "" 

870 A= INT (N/ BASE) 

880 R= N- A* BASE:R$= MID$ (HX$,R+ 1,1)+ R$:IF A> 
0THEN N= A:GOTO 870 

908 

909 REM Format and print out the result. 

910 PLOT 22:ON INT (BASE/ 5)+ lGOSUB 960,1000,1040,1050 
920 IF NS(1)< 0THEN R$= "- "+ R$ 

930 PLOT 19:PRINT R$ 
937 

938 REM If ABS (number) > 65535, it will not format 

939 REM correctly, so give overflow error. 

940 IF ABS (NS(1))> 65535THEN 1760 
950 GOTO 300 

959 

960 PRINT "BINARY: "; 

970 IF LEN (R$)< 9THEN R$= RIGHT$ (Z$+ R$,8):GOTO 990 

980 R$= RIGHT$ (Z$+ R$,16) :R$= LEFT$ (R$,8)+ " "+ RIGHT$ (R$,8) 

990 RETURN 

999 

1000 PRINT "OCTAL: "; 

1010 IF LEN (R$)< 4THEN R$= RIGHTS (Z$+ R$,3) :GOTO 1030 

1020 R$= RIGHT$ (Z$+ R$,6):R$= LEFT$ (R$,3) + " "+ RIGHT$ (R$,3) 



1030 RETURN 

1039 

1040 PRINT "DECIMAL: ";:RETURN 

1049 

1050 PRINT "HEXADECIMAL: "; 

1060 R$= RIGHT$ (Z$+ R$,4) :RETURN 

1298 

1299 REM 

Subroutine to bump Buffer Pointer & get next Character. 

1300 BP= BP+ 1:C$= MID$ (I$,BP,1) :IF C$= " "THEN 1300 
1310 RETURN 

1398 
1399 REM 

Subroutine to convert number in input string to decimal. 



1400 

1409 

1410 

1420 

1430 

1438 

1439 

1440 

1448 

1449 

1450 

1457 

1458 

1459 

1460 

1470 

1478 

1479 

1480 

1490 

1498 

1499 

1500 

1510 

1518 

1519 

1520 

1529 
1530 
1540 
1597 
1598 



LN= LEN (N$):N= 

FOR J= 1TO LN 

ON INT (B/ 5)+ lGOSUB 1460,1480,1500,1520 
NEXT :IF ETHEN RETURN :REM EO0 if there's an error. 

REM Check for Unary operator 

IF U$< > "!"THEN N= VAL (U$+ STR$ (N) ) :U$= "I" 

REM Push Number onto Number Stack 
NP= NP+ 1:NS(NP)= N:RETURN 

REM Check for invalid characters 

REM Binary 

IF MID$ (N$,J,1)> "1"THEN E= J:J= LN:RETURN 

GOTO 1530 

REM Octal 

IF MID$ (N$,J,1)> "7"THEN E>= J:J= LN:RETIURN 

GOTO 1530 

REM Decimal 

IF MID$ (N$,J,1)> "9"THEN B= J:J= LN:RETURN 

GOTO 1530 

REM Hex 

IF MID$ (N$,J,1)= > "A"THEN V= ASC (MID$ 

(N$,J,1))- 55:GOTO 1540 

V= VAL (MID$ (N$,J,1)) 

N= VAL (SER$ (Nf V* B~ (LN- J) ) ) :RETURN 



1599 
1600 
1608 
1609 
1610 
1620 
1628 
1629 
1630 
1639 
1640 
1650 
1660 
1670 
1678 
1679 
1680 
1698 
1699 



REM 

Apply latest operator to top 2 numbers on Number Stack. 

REM Get the 2 numbers. 
Nl*= NS(NP- 1) :N2= NS(NP) 

REM Apply the operator. 

0= ASC (OS$(OP))- 40 

ON OGOSUB 1680,1640,1650,1680,1660,1680,1670 

REM Pop operator & 2 numbers. Push new number onto stack. 
OP= OP- 1:NP= NP- 1:NS(NP)= N:RETURN 

N= Nl* N2:RETURN 
N= N1+ N2:RETURN 
N= Nl- N2:RETURN 
N= VAL (SER$ (INT (Nl/ N2))):RETURN 

REM Error message used during debugging 
PLOT 17: PRINT "ERROR AT O="0:END 



REM 



Error messages 



1700 GOSUB 1770:PRINT "BASE OODE SYMBOL" :GOTO 300 
1709 

1710 GOSUB 1770:PRINT "SEMICOLON": GOTO 300 
1719 

1720 GOSUB 1770:PRINT "NUMERICAL EXPRESSION": GOTO 300 
1729 

1730 GOSUB 1770: PRINT "OPERATOR": GOTO 300 
1739 

1740 PLOT 17:PRINT TAB( (BP)- (LN- E- (BP< L)))"~" 
1750 PRINT "ERRORl INVALID CHARACTER FOR BASE"B:GOTO 300 
1759 

1760 PLOT 17: PRINT : PRINT "OVERFLOW IN EVALUATED 
EXPRESSION" :GOTO 300 

1769 

1770 PLOT 17:PRINT TAB( BP)"~":PRINT "ERRQRI EXPECTING "; :RETURN 

READY 



NOVEMBER 1980 



149 



BUZZY 



Hal Gerhardt 



I MADE THE TWO OF 
THEM, BUT THEY MAKE A 
FOOL OUT OF ME / 



YOU SHOULD HAVE TO 
CLEAN HIS OIL SPOTS! 




PROF .' 



BUZZY ! 



TINSEL-/ MRS. GRUMP ! 



IN STOCK FOR IMMEDIATE SHIPMENT 



:Tt 



16K MEMORY KITS $49.95 

41 1 6s 6 MONTH WARRANTY INSTRUCTIONS INCLUDED 

DISK DRIVES 

PERCOM TFD-100 $325 
PERCOM TFD-200 $595 

CCI-100 $305 

CCI-200 $495 

2 DRIVE CABLE $24.95 4 DRIVE CABLE S34.95 

PRINTERS $695 

MICROTEK MT80P BI-DIRECTIONAL 
1 25 CPS UPPER & LOWER CASE 

1 YEAR WARRANTY 

CABLE-$24.95 

DISKETTES 

MEMOREX OR BASF 1 0/ $26.50 I 

YOUR SATISFACTION GUARANTEED OR FULL REFUND 

MICROCOMPUTER SERVICES CORPORATION 

7314 MATTHEWS-MINT HILL RD. CHARLOTTE, NC 28212 

•TRADEMARK TANDY/RADIO SHACK CORP 
PERCOM TM PERCOM DATA CCITMCPUIND 



704-545-0826 



CIRCLE 210ON READER SERVICE CARD 



Atari 
Owners 

who need support 



Send for your FREE Mosaic Electronics 
software catalog today. Includes games, 
educational programs, utilities and more. 



I have an Atari 400. 



Atari 800 



Please send me your: 

□ 8K to 16K RAM expansion kit ($79.00) 

(My check is enclosed) 

□ Software Catalog 



NAME 



STREET 



CITY. 



STATE 



ZIP 



Send to: 



H mosaic 



150 



ELECTRONICS 

P.O. Box 748 (C) Oregon City, Oregon 97045 

Mosaic Electronics is in no way affiliated with Atari. 



CIRCLE 179 ON READER SERVICE CARD 

CREATIVE COMPUTING 



Buzzy 



Hal Gerhardt 




RIDICULOUS/ ME 

PETTING A HUNK 
OF IRON. ,,£^ 




Buzzy 



CLACK.' CLACK! 
CLACK! CLACK! 
CLACK' ] 



PRESCHOOL FUN 

( 1 6K BASIC) This readiness program 
has two parts with several individual mod- 
ules. Part one reinforces color, shape and 
number recognition. Part two has units on 
upper and lower case letters and directions. No 
reading required. Full color graphics and sound. 
cass. $15.00 

MATH FACTS - LEVEL 1 

r (16K BASIC) First in a series of self-paced instructional 
programs for elementary school children. The program auto- 
matically advances to the next unit when the child has mastered 
80% of the work generated by the computer. The previous unit 
will be reviewed if the child cannot master 50% of the work in a 
particular unit Concepts covered are: numbers, number place 
ment and number words ( 1 -20), addition and subtraction (visual 
and abstract). (Grades K-2) cass. $1 5.00 

CRIBBAGE 

(24K BASIC) Play cribbage with the computer at two different 
levels. As a begmner, the computer will point out your errs without 
penalizing you. But watch out! At the intermediate level, the 
computer will peg your points if you don't cass. $ 1 5.00 

CASINO I 

(16K BASIC) Try your luck at the Lucky Lady . . . Play 
BLACKJACK . . . The computer will be the dealer foryou and your 
friends ( 1 -4 players). You can split and double your hand as you 
attempt to break the house. OR hit it big on the SLOT MACHINE. 
Two programs on one tape cass. $15.00 

*ATARI is a trademark of Atari, Inc. 



i^H.E.S.I.S. 

P.O. Box 147 

Garden City, MI 48135 

or call (31 3)595-4722 for C.O.D. 



Please add $1.50 for shipping 
Mich, residents add 4% tax 
WRITE for FREE FLYER 
DEALER INQUIRES WELCOME 



CIRCLE 241 ON READER SERVICE CARD 



Hal Gerhardt 




BUZZ CLICK TINSEL SAID HE'S JUST 
LEARNED THE TRUE MEANING 
OF FRUSTRATION. 



TERMINALS FROM TRANSNET 



PURCHASE 
PLAN 



12-24 MONTH FULL 
OWNERSHIP PLAN 



36 MONTH 
LEASE PLAN 



DESCRIPTION 



PURCHASE PER MONTH 

PRICE 12 M0S. 24 MOS. 36 M0S 



LA36 DECwriter II 

LA34 DECwriter IV 

LA34 DECwriter IV Forms Ctrl 
LA120 DECwriter III KSR .. 

LA180 DECprinter I 

VT100 CRT DECscope 

VT132 CRT DECscope 



$1,695 


$162 


$ 90 


$ 61 


1,095 


105 


59 


40 


1,295 


124 


69 


47 


2,495 


239 


140 


90 


2,095 


200 


117 


75 


1,895 


182 


101 


68 


2,295 


220 


122 


83 



DT80/1 DATAMEDIA CRT 



1,995 191 106 



72 



TI745 Portable Terminal .... 1 ,595 153 

TI765 Bubble Memory Terminal 2,595 249 

TI810RO Printer 1,895 182 

TI820 KSR Printer 2,195 210 

TI825 KSR Printer 1,595 153 



ADM3A CRT Terminal 875 

ADM31 CRT Terminal 1,450 

ADM42 CRT Terminal 2,195 



QUME Letter Quality KSR 
QUME Letter Quality R0 



3,295 
2,895 



316 
278 



176 
155 



119 
105 



HAZELTINE 1420 CRT 
HAZELTINE 1500 CRT 
HAZELTINE 1552 CRT 



945 
1,195 
1,295 



Hewlett-Packard 2621 A CRT . 1,495 
Hewlett-Packard 2621 P CRT . 2,650 

FULL OWNERSHIP AFTER 12 OR 
10% PURCHASE OPTION AFTER 



24 MONTHS 
36 MONTHS 



ACCESSORIES AND PERIPHERAL EQUIPMENT 

ACOUSTIC COUPLERS • MODEMS • THERMAL PAPER 
RIBBONS • INTERFACE MODULES • FLOPPY DISK UNITS 

PROMPT DELIVERY • EFFICIENT SERVICE 



RA NsNe T corporation 



1945 ROUTE 22 
UNION, N.J. 07083 



201-688-7800 

TWX 710-985-5485 




NOVEMBER 1980 



CIRCLE 198 ON READER SERVICE CARD 



puzzles & problems 





he year end holidays are rapidly approaching and Merlin thought that it would be a good idea to remind our readers 
that one of the best presents that they can give themselves, and their friends, would be a book or two from the 
famous Merlin's Puzzler series. The following review, covering the first two volumes of this series, appeared in 
K^*Vf GAMES Magazine. 
jj^ "V "Puzzle books are nothing new, and neither are the puzzles in them. But what sets Merlin's Puzzlers apart from 
the crowd is the style and imagination with which the material is presented. Townsend has adapted hundreds of the 
world's most intriguing puzzles, games, and magic tricks to original formats. In Volume 1 he calls upon Sherlock 
Holmes to pose the problems to Watson, and the Mad Hatter and Humpty Dumpty (among others) to confuse and 
confound "Alice in Puzzleland." Other fantasy trips lead to Merlin's (fictitious) library, and to Maskelyne and 
Cooke's Egyptian Hall (London's home of magic in the 1890s) for an anachronistic look at Houdini, Keller, 
Thurston, et al., in action." 

"Merlin 1 and 2 are richly illustrated with old 
woodcuts, lithographs, prints, posters, and playbills 
from Townsend's collection. Thus, where Holmes 
appears, so do Sidney Paget's original illustrations 
from The Stand, and Alice is accompanied by John 
Tenniel's drawings from the works of Lewis Carroll." 
"Many of the puzzles have not been heard from 
in years. Others are perennial favorites 

We thank GAMES Magazine for that generous 
review. As for Volume 3, well, all I can say is that it is 
just like 1 and 2, but, according to Merlin, better. All 
three of these books are large in size, 8'/ 2 " x 11", and, 
each one contains 128 pages. All are obtainable from 
Creative Computing. Numbers 1 and 2 are available 
as a set for $7.50. Number 3 costs just $4.50. Order 
using handy postcard order form in the back of the 
magazine. 



4c 




152 



CREATIVE COMPUTING 




The Time Out Puzzle 

uring The Festival Of Puzzles, held once a year on The Isle Of Merlin, they decorate the convention city with 
huge puzzles. In the picture shown here we see, hanging on the Park Plaza office building, a gigantic six- 
sided clock. "The puzzler may run out of time attempting to solve this puzzle," reads the convention 
program. "The challenge is simple. Merely rearrange the numbers on the clock so that the sum of each of the 
six sides totals 17." All right puzzlers, the clock is running! (From "Merlin's Puzzler 1") 





F 


L 


O 


P 


















































D 


I 


s 


K 



Change-The-Word-Puzzles 

hange-the-word puzzles seem to be among the most popular puzzles with our readers. Willard 
Wordsworth reports that the response from the "PLAY to WORK" challenge in July's "Puzzles and 
Problems" has provided us with several solutions to his challenge to the readers to find a solution to the 
problem in less than 8 moves. Some of the answers he received follow: From Ann Haase, of La Crescent, 
Minn, we have PLAY, PLAT, PEAT, PERT, PERK, PORK, WORK; From Robert E. McLintock, of 
Houston, Texas and Bryan Brwer, of Ashford, WA, we have PLAY, PLAT, PEAT, PEAK, PEAK, 
PERK, PORK WORK; David S. Alexander, of Wilmette, 111., writes PLAY, PLAT, PEAT, PERT, 
PORT, PORK, WORK; Warren Spivak of Brooklyn, New York sends PLAY, CLAY, CLAP, CLOP, 
COOP, COOK, CORK, WORK; From Russell Olin, of Orlando, FL., we have PLAY, PLAT, PLOT, 
CLOT, COOT, COOK, CORK, WORK. Scott Mr. Jefferies, of Augusta, Ga., writes PLAY, PLOY, 
PLOT, BLOT, BOOT, BOOK, COOK, CORK, WORK. We thank you, one and all. 
From Robert E. McLintock, who sent us one of the solutions reprinted above, we 
have a new change-the-word puzzle for Willard to add to his collection. Our readers are 
challenged to change the word FLOP to the work DISK in just 7 moves (or less). Here we 
go again! Willard will be looking forward to your answers. (For his efforts 
Mr. McClintock will receive a copy of "Merlin's Puzzler 1"). 



The Over-Polite Guests 




even gentlemen met to dine at a 
restaurant, when a question 
arose as to precedence, no one desiring to 
take what were regarded as the more 
honourable seats. To settle the matter, one 
of them proposed that they should dine 
together every day until they had respec- 
tively occupied all possible positions at the 
table; and the suggestion was accepted. 

How often must they dine together to 
answer the above conditions? 

(This Puzzle is from "Merlin's Puzzler 
2"). 



Rule on cardboard a rec- 
tangular figure divided into 
twelve squares, as shown below, 
and in the first ten spaces, 
beginning from the left hand, 
dispose ten counters, red and 
black alternately. 



The puzzle is to move two adjacent counters at a time so that the five red 
and the five black counters are grouped, each color together without any 
interval, and this must be done in five moves only. At the close of the operation 
the ten counters should be grouped five black and five red. 

They are then to be worked back again, after the same fashion, to their 
original positions. 

(This puzzle is from "Merlin's Puzzler 3"). 




CD ® ® (i) O) (?) (7) (?) (i) (S) 













Answers on page 224. 






So ends another session of Puzzles and Problems. If you have a 
favorite puzzle you would like to share with the other readers of 
Creative Computing send it along to Merlin. If he uses it he will send 
you a copy of one of his books. 

Until next time, good puzzling! 



Your editor 




CHARLES BARRY TOWNSEND 



NOVEMBER 1980 



153 



Effective Writing 



Edmond H. Weiss, Ph.D. 



The Secret of the Sentence 



Edmond H. Weiss, a communications 
consultant, teaches effective writing 
seminars for business, industry, and 
government. To contact him, call 
609-795-5580. 






Quick. Tell me where you should put 
the most important words in a sentence. If 
you answered, "the beginning," you're 
wrong. 

One of the best kept secrets about 
effective writing — a secret your English 
teachers never told you — is that a well- 
made sentence almost always saves its new 
and interesting information for THE 
END. As Strunk & White put it in The 
Elements of Style — 

The proper place in the sentence for 
the word or group of words that the 
writer desires to make most promi- 
nent is usually the end. 

The fact that so few computer people 
and other amateur writers realize this 
accounts or much of the tediousness in 
writing about computers and technology. 
A good many of the sentences in print, 
even though they are grammatically 
correct, have all their important informa- 
tion in their first few words. They do not so 
much end as fall off and die. 

And, to make matters worse, during 
a first draft it is natural for writers — even 
the very best ones — to blurt out their main 
information at the beginnings of their 
sentences. Those writers who never revise 
or edit (and you know who you are) send 
out a lot of backwards sentences. 

Let me illustrate. 

Inverted Sentences 

This sentence is just plain backwards: 

Improved morale is the main effect 
of the word processing system men- 
tioned above. 

Instead, it should read: 

The main effect of the word proces- 
sing system mentioned above is 



Edmond H. Weiss, Ph.D., 1612 Crown Point Lane, 
Cherry Hill, NJ 08003. 



(Feel the suspense?) improved 
morale. 

Here's another backwards item: 

Documentation techniques is a 
subject lacking in the computer 
sciences curriculum. 

Instead, it should read: 

A subject lacking in the computer 
sciences curriculum is documenta- 
tion techniques. 

In nearly every case these inverted 
sentences are the result of our making sure 
that we get the main point down, right 
away, before we forget what we wanted to 
write. (In a first draft, therefore, they are 
excusable.) But they need to be revised, so 
that they build in interest and make the 
reader want to find out what happens next. 

Empty Predicates 

The end of the sentence, the place 
where the new and emphatic information 
should usually appear, is generally the 
predicate. (That is, a verb, followed by 
some modifiers, or an object, or some 
complement to the subject.) 

77?^ "action" in a sentence should be 
in the predicate, preferably in the verb. 
Unfortunately, though, the same writers 
who blurt out the main information first 
also leave no important information to put 
in the predicate. 

Consider these sentences in which the 
authors spoke their entire piece before they 
even hit the verb: 

The urgent need for programmable 
calculators in the high school math 
program . . . exists. 

The certainty of being able to 
manufacture these circuits locally . . . 
is emphasized. 

The importance of training the 
operators before the equipment is 
installed ... is called to your atten- 
tion. 

Although each of these sentences is 
grammatically well-formed, each also 
contains an empty predicate, a predicate in 
which nothing interesting happens because 
the author has said everything in the 



subject. Thus, these three sentences have 
weak endings, and, like plays without final 
acts, they are dull and unsatisfying. 
Consider these edited versions: 

Our high schools urgently need pro- 
grammable calculators in the math 
program. 

I am certain we can manufacture 
these circuits locally. 

We must train the operators before 
the equipment is installed. 

Notice that in each case I pulled a verb 
(italics) out of the subject of the sentence 
and stripped away the false, empty 
predicate. And, in each case, I have 
managed to place the new and important 
information in the sentence last. 

Passives 

Putting verbs in the passive voice can 
also reverse the natural order of the 
sentence and make it backwards. In the 
sentence — 

A preventive maintenance manual is 
left on site by a field engineer. 

— it's hard to know what the author is 
getting at. Is the important idea the fact 
that the manual is left by the field engineer? 
If so, the sentence is correct. But if on site is 
the important fact, then the sentence 
should read: 

A field engineer leaves a preventive 
maintenance manual on site. 

And, if the emphasis is on the manual 
itself, then — 

A field engineer leaves on site a 
preventive maintenance manual. 

Complex Sentences 

Complex sentences contain one 
independent clause and one or more 
dependent clauses (which often begin with 
the words because, since, when, as, 
although and others). Because, in a well- 
written complex sentence, the main 
assertion is usually in the independent 
clause, the independent clause should 
usually come last. 

For some reason though — perhaps 
an editor's reluctance to start with 



154 



CREATIVE COMPUTING 



anything other than the main subject or a 
writer's neurotic fear of beginning a 
sentence with "because" — many of the 
complex sentences in the computer 
literature are backwards. For example: 

Backwards 

We have switched to a DBMS 
because we were spending too much 
for programming. 

Correct 

Because we were spending too much 

for programming, we switched to a 

DBMS. 

Backwards 

The customer will never accept this 

report even though the analyst likes 

it. 

Correct 

Even though the analyst likes this 
report, the customer will never 
accept it. 

Of course, you could object that in some 
cases the author chose to emphasize the 
information in the dependent clauses, and 
that the "backwards" versions are better. If 
that were so, you would be right. 

But, usually, that is not so. The way 
our sentences squirt out in the first draft is 
the way they stay, as though we had no 
power to influence them. 

You Have the Power 

Here is the main point: You, the 
writer, decide what you want to emphasize 
and then, while you revise, you contrive to 
have it appear at the end of the sentence. 
Almost no one can make these calculations 
during the first draft; we all must do them 
while we edit. 

You have the power. Even if the first 
draft version has a will of its own, you are 
never a slave to your own first versions. 

As it turns out, an easy way to decide 
what goes at the end of the sentence is to 
see what's talked about in the next 
sentence. The most fluent arrangement of 
thoughts is to have what is new in Sentence 
1 (therefore at the end) become what is old 
or established in Sentence 2 (therefore at 
the beginning). (This sequence eliminates 
much of a problem that many of my clients 
complain about: "choppiness".) 

So, the secret of sentences is to have 
them move from old to new, from familiar 
to unfamiliar. The proper arrangement 
depends on what has already been 
discussed in the previous sentences and 
what will be discussed next. 

For fun, think of a case in which each 
of these versions would be correct: 

A. Anticipating delays is the main 
function of a project manage- 
ment system. 

B. The main function of a project 
management system is anticipat- 
ing delays. 

Next time: Too many words. □ 




68OO 




6809 




We know you hardcore bit hack- 
ers will recognize the computing 
power derived from combining the 
FORTH language with the 6809, 
today's most advanced 8 bit 
microprocessor. 

And we know you'll understand 
this machine's 16 bit math, indirect 
addressing and two stacks are 
ideally suited for implementing 
FORTH. 

But... should anyone need further 
convincing that FORTH provides a 
new dimension in power, speed 
and ease of operation, consider 
the following: 

• It's a modern, modular, structured- 
programming high-level com- 
piled language. 

• It's a combined interpreter, 
compiler, and operating system. 

• It permits assembler code level 
control of machine, runs near 
speed of assembler code, and 
uses less memory space than 
assembler code. 

• It increases programmer produc- 
tivity and reduces memory hard- 
ware requirements. 



• It replaces subroutines by 
individual words and related 
groups of words called 
Vocabularies. These are quickly 
modified and tested by editing 
1024-character text blocks, called 
screens, using built-in editor. 

tFORTH is a basic system imple- 
mented for SS-50 buss 6809 systems 
with the TSC FLEX 9.0 disk oper- 
ating system. It is available on 5 1 /4" 
or 8" single density soft-sectored 
floppy disks. $100.00 

tFORTH + consists of tFORTH plus a 
complement of the following 
FORTH source code vocabularies: 
full assembler, cursor controlled 
screen editor, case statements, 
extended data types, general I/O 
drivers. $250.00 

firmFORTH is an applications pack- 
age for use with tFORTH. It provides 
for recompilation of the tFORTH 
nucleus, deletion of superfluous 
code and production of fully 
rommable code. $350.00 



Call or write today 



NOVEMBER 1980 




MICROSYSTEMS 



3350 Walnut Bend • Houston, Texas 77042 • Phone (713) 978-6933 



155 



CIRCLE 213 ON READER SERVICE CARD 




>v 



The comments and opinions of 
the author are given for education- 
al purposes only and are not 
meant to be legal advice. Specific 
legal questions should be referred 
to your personal attorney. 



Harold L. Novick 



As promised in last month's Forum 
here is the "rebuttal" by Mr. P. V. Piescik 
of Cuddly Software, Wethersfield, CT. 
Although the "rebuttal" contains some 
minor errors, and although there is 
disagreement with some of its statements, 
it is set forth as submitted to give a very 
interesting perspective. 

April 20, 1980 

Dear Mr. Novick, 

Enclosed, at long last, is my "rebuttal" 
to the CompuChess decision. 

Actually, I changed my approach, and 
this is more appropriately termed a 
"perspective," since 1 chose not to 
challenge the precedent, but rather accept 
it as the status quo, and point out (I hope) 
where it leaves software, and where it 
should be. 

In the course of writing this, I 
consulted with another software design 
engineer, whose thoughts closely parallel 
mine, and contributed somewhat to my 
perspective. His work, however, is classi- 
fied, beyond the general mention that it 
deals with airborne data systems, and is 
ostensibly unaffected by this whole 
subject. At least I can say that a minimum 
of two software-types (he and I) agree with 
my evaluation of the situation! 

While my primary intention in writing 
this is to contribute (hopefully) to the 
creation of realistic protection of software 
properties, I leave publication to your 
discretion. 

Sincerely, 
P. V. Piescik 

The CompuChess case (Data Cash 
Systems, Inc. v. J S and A Group, Inc., 203 
USPQ 735 (N.D. 111. 1979) proves that all 
software is totally unprotected under 
present copyright law! Regardless of any 
of the variety of individual opinions, pro or 
con, precedent has been established, with 
some horrible implications. 
V Several points were brought out in the 



decision, which show that the nature of 
software is not understood. It stands to 
reason that protection cannot be afforded 
to an entity which is best recognized by 
one's intuitive sense; intuition is a poor 
defense in Court. Copyright law, which is 
usually the means of attempted protection 
of software, explicitly excludes object 
code, which ultimately is the only exec- 
utable, i.e., useful, i.e., necessary form of a 
program. A pirate need only translate 
protected (?) source programs from high- 
level or assembly language to machine 
language (object code) to circumvent even 
nominal protection. And an object 
program is not recognized as a copy of the 
source program from which it is produced 
by translation. 

Incidental misunderstandings of 
computers, programmers, and software 
occur in the decision, they are moot in light 
of the lack of protection. However, if 
realistic coverage is to be provided, they 
must be resolved, and so will be discussed. 

Assembly-language was equated by 
the Judge to machine-language. Machine 
language is obviously "understood" by the 
machine (computer), which understands 
only what it can execute. Machine- 
language is equivalent to executable object 
code; assembly-language source code is 
only input data to the assembler, for 
translation into object code. 

The Judge also stated that assembly 
programs and object programs are difficult 
and impossible (respectively) to be 
understood by programmers, regardless of 
their training and/ or experience. This 
statement would be laughable, were it not 
for the grave nature of its implications. 
Both are products of man's intellect; it is 
illogical to believe that the same intellect 
cannot comprehend them. Their only 
shortcoming is a lack of convenience, as 
their form is not ideal to facilitate human 
comprehension. While object code must 
retain its form to be interpreted by a 
machine, a great deal of latitude is 



provided by most assembly languages in 
the use of symbolic labels; it is possible and 
desirable to utilize these symbols and 
produce programs which are almost 
English, if a bit cryptic and stilted. These 
lowest-level forms of code are not 
incomprehensible, merely inconvenient. 
The computer can also be used to 
disassemble object code at least to the 
assembly level. 

In the decision, object code in ROM is 
also classified as hardware, not software, 
and as such is a part of the computer 
circuitry. The same might be said for 
programs in RAM, since any object 
program is merely an ordered set of state 
settings for a multitude of binary switches 
both in the memory and in the processor 
and other components during execution. 
The progression of this line of thought may 
lead to the conclusion that there is no 
software, only hardware! ROM is simply 
another medium, only non-volatile. 

If, however, the ROM is not seen as a 
medium for software, and therefore the 
object code is a hardware entity, the 
question of patentability arises. The patent 
is ostensibly the appropriate form of 
protection for hardware rights. Acquiring 
a patent is a rather complicated process, 
time-consuming, and much more expen- 
sive than registering a copyright. Among 
the qualifications for patentability are 
application and novelty, both of which 
may be in the range of difficult to 
impossible to demonstrate. Few programs 
are sufficiently new and different from 
previously written software, especially in 
an industry where compatibility and 
portability are very desirable. The applica- 
tion requirement may exclude all software 
of the systems class, as operating systems, 
I/O modules, language processors and 
various utilities are the tools of computer 
science. Tools of science do not qualify for 
patents. Patents might be more easily 
obtained to protect the "concept" of the 
program, which should be construed as the 



156 



CREATIVE COMPUTING 



r 



process described by the program for 
performance (execution) of the process by 
the computer. The logical extension of this 
protection would prevent registration (i.e., 
patenting) of all new Basic interpreters, for 
instance, once the first interpreters were 
registered! Substitute the name of virtually 
any other program (Star Trek games, 
assembler, accounts receivable ledger, etc.) 
for "Basic interpreter," and this method is 
obviously too restrictive. 

Computer and software are a radical 
departure from previous forms of 
machinery and communications, when 
taken as a whole. Even among computer 
scientists, many aspects of computing are 
extremely difficult to define, explain, and 
comprehend in deterministic terms. It 
should not be surprising, then, that 
attempts to force-fit software into the 
requirements of either copyright or patent 
protection fail amid controversy! Software 
is a communication of ideas between 
human and machine, spanning a tremen- 
dous difference in intelligence. To a 
machine which is no more than an amazing 
conglomeration of toggle switches (or their 
electronic equivalent) and which under- 
stands only 'on' and 'off, the alphabet, let 
alone the vocabulary, of man has the 
complexity of a five-dimensional universe. 
(Fortunately, the machine fairly ade- 
quately compensates for its lack of 
intelligence with its speed.) Object pro- 
grams are man's ideas distilled to machine 
level; other languages (levels) are simply 
arbitrary limitations imposed upon man's 
vocabulary to facilitate mechanical trans- 
lation, while allowing easier human 
recognition of the format of expression 
used to communicate the ideas. It is 
necessary, therefore, that several forms of 
a program exist simultaneously on a 
variety of media. The alternative is to 
require the destruction of all but one form, 
existing in a single medium, at any given 
time for any given program. This is 
counter-productive. It would require, for 
instance, that a tape copy of a program be 
erased when the program is loaded into 
memory^ and re-created upon termination 
of the execution run; modifications 
requiring human intervention would 
require translation back to high-level code, 
and subsequent translation to object code. 
This would be extremely inconvenient, 
wasteful, and impossible to protect; several 
forms of protection would be required, 
which each in effect or dormant as the 
corresponding program form exists. 

Protection which does not cover any 
and all forms and media of a program is 
useless. As previously mentioned, one need 
only to translate a protected form of a 
program to an unprotected form. Some 
copying is also necessary to protect the 
interests of the consumer, such as creating 
a copy in memory from other media to run 
the program, and back-up copies of the 



\ 

other media to prevent losses due to 
catastrophe. The need for this copying is 
recognized by the producer as acceptable. 
So, when is copying not acceptable? 

Generally, profit and/ or distribution 
are the deciding factors in determining the 
acceptability of copying. However, these 
are usually examined from the wrong 
standpoint: whether distribution is poten- 
tially profitable for the copier. Especially 
regarding computers, with the aboundance 
of clubs and user groups, this is the wrong 
criterion. Proliferation of copies among 
members may not even involve pecuniary 
transactions; each recipient simply pro- 
vides his own tape or disk to receive a copy, 
and someone usually has access to an office 
machine to produce free copies of printed 
documentation. With software, the cri- 
terion should be "copying to avoid 
purchase (from the producer)" with any 
transaction between two or more parties 
viewed as being conducted with the intent 
to avoid purchase. This is where the 
producer loses in his attempt to recover his 
investment, which could lead to higher 
prices and less available software. 

As parts of existing protective 
legislation will undoubtedly be the basis 
for extension to realistic coverage for 
software, yet another point deserves 
mention. Object code lacks "eye appeal," 
one of the qualifications required for 
copyright. However, in the CompuChess 
case, and perhaps copyright law itself, the 
computer is not recognized as a form of 
mechanical assistance, which is allowable 
as in the instance of microfilm/ fiche 
media. Granted the computer is more 
complex than a microfilm viewer, but it is a 
machine assisting man's visual perception 
("eye appeal") of the software, and should 
be recognized. 

The need, then, is for a form of 
protection which recognizes a program as 
a polymorphic description of a process, 
ultimately to be executed by a machine. All 
forms should be recognized as equivalent 
by means of translation according to the 
provisions of the programming languages 
used, which is simple enough to demon- 
strate. Copying any or all forms of a 
program must be allowable in the interest 
of preventing catastrophic losses to the 
consumer; copying for distribution to 
other parties, with the intent to avoid 
purchase, regardless of profit or the lack of 
same, must be forbidden. Fixation of any 
or all forms in a particular medium should 
not be required, and in the case of media 
which are machine-readable only, the 
computer must be recognized as a form of 
mechanical assistance if visual perception 
of the work is a requirement. Algorithmic, 
and possibly, flowchart representations of 
the process, and the process per se, should 
not be restricted, as such restriction would 
serve to hamper scientific communication 
and progress. □ 




interactive 
Video 



• Integrate the interactive computing 
power of the Apple* with the audio- 
visual impact of videotape using the 
same TV monitor. 

• Find and play frames or segments of 
videotape from the Apple keyboard or 
from within the program. 

• Use the system to combine computer- 
assisted instruction with videotaped 
learning. 

• Store and retrieve (computer) text plus 
(video) pictures in the same system 
(for slides, operations, repair manuals, 
simulations, sales, etc.) 

• Extensive authoring software allows 
simple programming in Applesoft. 

A complete package of all interfacing 
hardware, software, and connectors 
available from 

Cavil 

SYSTEMS 

26 Trumbull Street 
New Haven, CT 06511 
or call (203) 562-4979 



Yes, 
please 



□ send me more information. 

□ send me a CAVRI package. 
My purchase order or check 
for $495.00 is enclosed. 



Name 



Organization 



Address 



City 



State 



Zip 



Phone 



VTR Make 



Model 



•TM - Apple Computer Co. 



CC 11/80 



CIRCLE 1180N READER SERVICE CARD 



NOVEMBER 1980 



157 




Correspondence is welcome. 
Letters with interesting quest- 
ions and ideas wili be used in the 
column along with a response. 
No personal replies can be 
made. Send to: David Levy, 104 
Hamilton Terrace, London NW8 
9UP, England 



CHESS 

Of all the games that have attracted 
the attention of computer programmers, 
chess must surely rank at the top of the list. 
This is partly because chess is considered 
by many to be the intellectual game, par 
excellence, and therefore the creation of a 
strong chess program can be equated with 
the creation of an artificial intellect. 
Another reason is that writing a chess 
program is a great challenge. 

A measure of the popularity of 
computer chess programming may be 
judged from the history of computer chess 
contests. In 1 970, in New York, there was a 
tournament in which all six of the 
contestants were computer programs. The 
event proved so popular that it has been 
repeated each subsequent year, at the 
annual conference of the Association for 
Computing Machinery, and by the end of 
the 1970s there were usually between 12 
and 20 applications for places in the 
tournament. Now that personal computers 
are available in large numbers, chess 
contests are springing up specifically for 
small computers. Personal Computer 
World is organizing its third such tourna- 
ment in London on September 4th-6th this 
year, and this event has the status of World 



Championship, and is being held under the 
auspices of the International Chess 
Federation — an indication that "real" 
chess players are now beginning to take 
computers seriously. Other small com- 
puter chess tournaments are being held in 
the USA, France and Germany. Probably 
there will be a dozen such events in the 
calendar by the end of 1981. 

Because of the enormous interest in 
computer chess, a lot has been written on 
the subject. I have decided that this article 
and the following one will provide a 
history of the most important milestones in 
the field, and I shall discuss how the ideas 
employed in mainframe programs may be 
applied to computers. In a third article I 
shall discuss the current state-of-the-art of 
computer chess programming, with many 
examples taken from actual games. 

In the Beginning 

On March 9th, 1949, the American 
mathematician Claude Shannon delivered 
a paper at a New York conference. The 
paper was called Programming a Com- 
puter for Playing Chess, and it is 
remarkable that many of Shannon's 
original ideas have permeated through to 
the programs of today. He pointed out that 
there are some 10 120 possible games of 40 
moves (the average length of a master 
game), and that analyzing to this depth at 
the rate of one game per microsecond 
would take a computer 10 90 years to make 
its first move! A similar, though even more 
emphatic argument, is that the number of 
possible chess games so far exceeds the 
number of atoms in the universe, that even 
were each atom to be replaced by a Cray 1 
computer, it would take the whole system a 



rather long time to make the first move in a 
perfect game of chess. 

Having dispensed with the notion of 
perfect play through exhaustive search, 
Shannon set about defining an evaluation 
function which would give a reasonably 
reliable estimate of which side held the 
advantage in a position, and by how much. 
His example of a crude evaluation function 
was: 



200 X (K - K. ) + 9 X (0 - QJ + 5 X 
w b w b 



(R « "V + 3X (B w - B b + N * - V 



+ (P - P.) - 0.5 X (D - D^ + S - S u 

w b w b w b 



+ I - I. ) + 0.1 X (M - M u ) 
w b w b 



where K, Q, R, B, N and P represent the 
number of pieces of each type (king, queen, 
rook, bishop, knight and pawn), and the 
subscripts w and b refer to white and black. 
D is the number of doubled pawns (pawns 
of the same color on the same file); S is the 
number of backward pawns (pawns that 
cannot be defended by a pawn); 1 is the 
number of isolated pawns (pawns with no 
neighbor pawns of the same color); M is 
the measure of mobility (the number of 
legal moves at a player's disposal). 

The king is given an arbitrary high 
value because loss of the king means loss of 
the game. The values of 9, 5, 3, 3 and 1 for 
the other pieces are the rule-of-thumb 
values which chess players learn early in 
their careers, though bishops are usually 
regarded as being more valuable than 
knights so in your chess program you 
might experiment with values of 3-1/4, 
3-1/3 or even 3-1/2 for a bishop. 



158 



CREATIVE COMPUTING 



Our new program 
package for the 

TRS-8CT 
sounds terrif ic- 



So does the price* 

There are lots of programs with sound that 
are worth about a dollar. Trouble is, they cost a 

lot more. 

But at Basics &l Beyond we've just developed 
Microcosm III, 20 programs with sound— each 
just as good as our competition's $15 and $20 pro- 
grams—for $24.95. That's a 20-program package 

for $24.95. 

It includes Tinball," replete with ringing 
bonuses, spinners, buzzers and flippers; torpedo- 
firing "Submarine" that explodes with underwater 
excitement; and the right/wrong buzzer in "Long 
Division" teaches step by step. 

At Basics 6k Beyond we underscored our 
point that most other program packages are over- 
priced with Microcosm I and Microcosm II, $19.95 
each. Now a lot of people will start hearing about 
our third package and stop listening to high prices. 

You see, it's not that our program packages 
for the TRS-80™ microcomputer are so cheap. 
It's just that theirs are so expensive. 

BASICS & BEYOND, INC 

Box 10 • Amawalk, NY. 10501 • Or call 914-9622355 
Master-charge and Visa accepted. 
No charge for postage or handling. N.Y. residents add 5% sales tax. 
TRS-80 is a trademark of the Radio Shack division of Handy Corp. 




CIRCLE 112QN READER SERVICE CARD 



CIRCLE 114QN READER SERVICE CARD 



IM 



I 



*U;M 



• » 



I. I 



Computer gomes without sound effects ore like TV mmrfflthort oudio 

— flot Notu uou con odd the Joy of sound to your entire 8RSIC library. 

Soundiuore™ gives you everything you (\ved\ 

Vou get hardware — o neat speaker-amplifier unit with volume control. 

earphone Jack and connectors. No wiring, no soldering - simply add two 

flfl batteries and plug it inl 

Vou get software — two programs to demonstrate and help you create 

your own sound effects. Make your programs come alive — add laser 

sounds, bird colls, bounces, clicks, sirens, music notes, tunesl Complete 

instructions included, one-year limited warranty, immediate shipment. 

See your dealer for demonstrations. 

If not convenient/order direct by phone (602)296-4978 or coupon. 
Pteose send SOUNDUJflAC os follows: 
D Ml PCTS. D Ml TftS-80 Level II - StttS D Ml CC^UCCXOfl II - »••« 

D Payment enclosed (CAP pays shipping) D f^°*>J«* 1 5%) 

D VTSfl/Bonkomerlcord ° Moster Chor 9« 

Cord No &p Dote Slg 

Pleose print 

Nome ________ ■ 



(Aruono residents odd 4% sales tax) 



r 



*£ 



*** 



Am /r— , u mt 






Address 
City 



Stote 



-Zip 



fill Pas. TRS-80 II 

$29.95 

COMPUCCXOR II 

$39.95 



PET 



a Send me a FR€€ catalog, of gome programs for RPPl€, P€T and COMPUCCXOa 



COMPUCOLOR 



TRS-80 



CIRCLE 131 ON READER SERVICE CARD 8462 Hilluiood In. Tuscan. RZ 85715 (602)296-4978 




CAP €lcctronics, Dept. C 



NOVEMBER 1980 



159 



r 



Games, cont'd. 



Shannon's evaluation function is 
sufficient to provide a reasonable level of 
performance in a computer chess program. 
Chess, however, is a complex game, and 
Shannon recognized the need for the use of 
many other features if the evaluation 
function were to result in a strong 
program, and he suggested the following 
additional features: 

1. Relative control of the center by 
pawns (white pawns at c4, d4, e4 and f4; 
black pawns at c5, d5, e5 and f5). 

2. Weakness of pawns near your own 
king (e.g., advanced pawns in front of the 
king after castling). 

3. Placing pawns on opposite colored 
squares from your own bishops to allow 
the bishops greater freedom of movement. 

4. Passed pawns (i.e., pawns which 
have no enemy pawns in front of them, 
either on the same file or on adjacent files). 
These pawns can often become queens in 
the endgame. 

5. Advanced knights (white knight at 
c5, d5, e5, f5, c6, d6, e6 and f6; black 
knights at c4, etc.), especially if protected 
by a pawn and free from attack. 

6. Rooks on open or semi-open files 
(an open file is one with no pawns; a semi- 
open file has one pawn belonging to the 
opponent). 

7. Rooks on the seventh rank. (A 
white rook on a7, b7, . . . , or a black rook 
on a2, b2, . . . , etc., can wreak havoc in the 
endgame by picking off the opponent's 
pawns.) 

8. Doubled rooks (two rooks of the 
same color on the same file). 

9. Pieces which are required for 
guarding functions and, therefore, com- 
mitted and with limited mobility. 

10. Attacks on pieces which give one 
player the option of exchanging. 

1 1. Attacks on squares adjacent to the 
enemy king. 

12. Pins. (A pin is a setup in which one 
piece may not move because of the loss of a 
piece which it is shielding. E.g., white 
bishop on g5, black knight on f6, black 
queen on e7. Black may not move his 
knight because of the loss of his queen — 
the knight is said to be pinned by the 
bishop.) 

The addition of these features would 
provide a rather sophisticated evaluation 
function for middle game play, though as 
Shannon himself pointed out, different 
factors apply in the opening and (to a lesser 
extent) in the endgame. 

When and How to Use 
The Evaluation Function 

Shannon understood that it is only 
safe to use this type of evaluation function 
in positions which are relatively quiescent. 
If White makes a move capturing black's 
queen, it is not sensible to evaluate the 



resulting position without looking to see if 
black might be able to recapture white's 
queen in reply, or whether he might be able 
to checkmate. In fact it is meaningless to 
evaluate a position during a series of 
exchanges, unless the evaluation mech- 
anism allows for the fact that further 
meaningful exchanges are possible. Chess 
players recognize quiescent positions 
intuitively, but computer programs have 
more difficulty because they cannot 
immediately determine which capturing 
moves and sequences are "obviously" 
wrong, in the way that a human chess 
master can. 

Shannon called a fixed depth search 
strategy a "type A" strategy. He realized 
that in chess this type of strategy would 
lead to weak play, partly because of 
evaluating many non-quiescent positions 
once the fixed search depth had been 
reached, and partly because of the time 
required for exhaustive search (the alpha- 
beta algorithm had yet to be invented in 
1949). Again he alluded to the thought 
processes of chess masters, and in 
particular to the work of the Dutch 
psychologist De Groot who recorded the 
spoken thoughts of chess masters as they 
analyzed a number of typical chess 
positions. Shannon concluded that in 
order to improve the speed and strength of 
the program it would be necessary to: 

1. Examine forceful variations as far 
as possible and evaluate only in quiescent 
or quasi-quiescent situations. 

2. Select the variations to be ex- 
amined by some process so that the 
program does not waste a lot of time in 
totally fruitless variations. 

Shannon called this type of strategy a 
"type B" strategy, and it is the Shannon B 
strategy which is used in almost all of the 
most successful programs of today. The 
key to the Shannon B strategy is the ability 
to determine which moves and variations 
are worth considering, a problem on which 
much has been written but rather little 
accomplished during the past three 
decades. When I examine a chess position I 
can usually make a reasonably good move 
after looking at only 50-100 nodes of the 
game tree. In order to play at the same 
level, the current world computer cham- 
pion must examine over one million nodes. 
If it had the same ability to discern which 
variations are important, it would be able 
to defeat Bobby Fischer. 

In order to help decide whether a 
move is worth exploring, Shannon 
suggested the use of a function which 
would return a large value for forcing 
moves (captures, checks and attacking 
moves), medium values for defensive 
moves, and low values for all other moves. 
As the depth of search increased, the 
requirements of this function would be set 
higher so that fewer and fewer subvaria- 
tions would be examined. This approach 
has proved successful in a number of 



strong chess programs, and can easily be 
implemented on a micro. One simple 
method of doing so would be to examine 
all moves at the root of the tree, then only 
the most important 90% of moves at ply-1 
("importance" being determined by 
Shannon's discrimination function), then 
only the most important 70% at ply-2, 50% 
at ply-3, 30% at ply-4, and 10% at ply-5 and 
beyond, down to the limits imposed by 
search time restrictions or to quiescent 
positions. My method would call for an 
examination of fewer than 10% of the 
number of nodes normally examined in a 
5-ply search, and the 90% saving could be 
used either to increase the sophistication of 
the evaluation function (which would also 
make it slower), or to increase the 
maximum depth of search in tactical 
situations. 

Another idea suggested by Shannon 
was the use of typical chess positions or 
fragments of positions, for which a 
particular move or moves is known to be 
effective. Chess masters use this type of 
information all the time. They recognize a 
situation and immediately start to examine 
a move which they know has often proved 
strong in similar positions. Of course it will 
not always be the case that exactly the 
same move is best in a slightly different 
situation, but as we have seen in previous 
articles it is extremely important to 
examine the most likely moves early in the 
search process. Unfortunately, the only 
substantial example of this approach was a 
dismal failure. A strong American chess 
master, Charles Kalme, implemented a 
method involving "snapshots" of chess 
situations. His work was discussed in a 
Scientific American article in 1973, but 
shortly thereafter his program fared 
dismally in the annual ACM computer 
chess tournament in Atlanta, and little has 
been heard of the program since then. 
Perhaps this is one example of a technique 
used by humans which will be difficult to 
employ in a computer program. In any 
event, Kalme's failure should not worry the 
small computer user, since the amount of 
memory required to use the snapshot 
approach would be prohibitive at today's 
prices. 



The Bernstein Program 



-I 



Shannon's work was fMMtty Kb/zwit 
tical in nature. He did not write a chess 
program to test his ideas, though if he had I 
suspect that his program would have been 
stronger than some commercially available 
programs which are now on the market. 
The first example of a program playing full 
games of chess was seen in the late 1950s. 
This program was written for the IBM 704 
computer by Alex Bernstein of IBM, and 
three colleagues. Since your own machines 
will all be considerably more powerful 
than an IBM 704, any of you who write 
chess programs ought to be able to do at 
least as well. 



160 



CREATIVE COMPUTING 



QYour students are gathering around the several PET computers in your 
classroom. And they all are hungry for hands-on turns at the keyboards. 
m Some students are just beginning to understand computers; others are 
so advanced they can help you clean up the programs at the end of the period. 
How do you set up a job queue, how do you keep the beginners from crashing a 
program, how do you let the advanced students have full access? And how do you 
preserve your sanity while all this is going on? 

A. With the Regent. 

Q. What is the Regent? 

ft The ultimate in classroom multiple PET systems. A 
**• surprisingly inexpensive, simple, effective way to have 
students at all levels of computer capability work and learn 
on a system with up to 15 PETs while the instructor has 
complete control and receives individual progress reports. 




Q. SUB-it? Proctor? What are they? 

The SUB-it is a single ROM chip (on an interface 
board in the case of the original 2001-8 models) 
that allows up to 15 PETs to be connected to a 
common disk via the standard PET-IEEE cables. The 
Commodore 2040. 2050 or 8050 dual disks and a 
printer may be used. 

The SUB-it prevents inadvertant disruption when one 
unit in a system is loading and another is being used. 



The Proctor takes charge of the bus and resolves 
multiple user conflicts. Each student can load down 
from the same disk but cannot inadvertently load to or 
wipe out the disk. Good for computer aided instruction 

Q. How expensive are these miracles? 

A We think the word is inexpensive. The Regent 
• system is $250 for the first PET; $150 for each 
additional PET in the system. The SUB-it is $40. (Add 
an interface board at $22.50 if the PET is an original 




2001-8.) And the Proctor is $95 

Phone or write for information. Well be delighted to answer any questions 

and to send you the complete information package. 

Skyles Electric Works 

231 E South Whisman Road, Mountain View. California 94041 (415) 965-1735 

CIRCLE 254 ON READER SERVICE CARD 





PRINTER 
DROPPED! 

Model 730 $649 

Parallel Interface (reg. $795) 

Upper & Lower Case 

100 cps — 80 character line 

5x7 Free Flight Ballistic Head 

Roll. Single- Sheet. & Tractor Feed Paper 

Model 737 $849 

Proportional Spacing (reg. $995) 

Right Justification 
Underline & Expanded Print 
Bidirectional Paper Motion 

(for superscript and subscript) 
High Density Dot Matrix 

(N x 9 free flight print head) 

(18 possible horizontal dot places) 
Roll. Single -Sheet. & Tractor Feed Paper 

Computerware Offers: 

• Full Factory Warranty 

• Immediate Delivery 

• Dependability - as a stocking Centronics distributor 

for 2 yrs 

• The latest models at affordable prices 



GtEEIC PUIS s 



only $14.95 




ii 



NEW DIMENSION 
TO YOUR VIDEO DISPLAY. 

Transform your black and white monitor (or TV) into a 
GREEN VIDEO DISPLAY with GREEN + PLUS.a high quality 
custom cut transparent shield which attaches in just 
minutes to your monitor. No tools are required. 

• specially designed to reduce eye fatigue • a sharper, 
crisper image • designed by an Industrial Designer and 

a Software Programmer • provides maximum clarity 



TO ORDER 

Phon« order* ar« Invited. U»e VISA. 
Master Charge, or Mf»d cashiers 
check or money order dra w n on a 
U.S. bank. Add shipping and handl- 
ins (2% for 730. 4% tec 7©*> or 
printer will be sent freight COD 



COMPUTERWARE 

1512 Encinitas Blvd., Box 668 
Encinitas, CA 92024 

(714) 436-3512 



IS 

I- 

ll 

IS 
15 
Ii 

■§ 
Is 

l< 

I" 

■ lu 

I 



Please send me 



GREEN + PLUS screens at $14.95 



each. I have included a payment total of $ 

(Mass. residents must add 5% sales tax). 

I am paying by 

□ Master Charge □ Visa □ Money Order □ Check. 



Charge Card # 

Expiration Date 

Cardholder's Signature 
Name 



./. 



CO 



Address 
City _ 



State. 



Zip. 



Screen size.... WIDTH:. 
Monitor (or TV) Name 



DEPTH 



CIRCLE 125 ON READER SERVICE CARD 




Computer p.o. BOX 783 

Research & ISLINGTON STATION 
Technology WESTWOOD, MASS. 02090 



% 
I 



CIRCLE 147 ON READER SERVICE CARD 



r 



Games, cont'd 



Bernstein et al, employed four 
features in their evaluation function: 
Mobility, area control, king defense and 
material. Area control was defined as the 
number of squares controlled completely 
by each side, while king defense counted 
the number of controlled squares around 
the king. Their material feature was 
weighted with the ratio of its own material 
to that of its opponent, in order to 
encourage the program to' exchange 
material when ahead and to discourage it 
from exchanging when behind. This simple 
heuristic is extremely well known, but not 
all programmers consider it worthwhile to 
implement it, and possibly because 
programs play worse in the endgame than 
they do during the middle-game! 

Moves were generated in response to a 
number of questions: 

1. Is the king in check? 

2. Can material be gained, lost or 
exchanged (i.e., can the program make an 
equal or advantageous capture, or is it 
threatened with material loss)? 

3. Is castling possible? 

4. Can a minor piece be developed? 

5. Can key squares be occupied? (Key 
squares are those squares controlled by 
pawns.) 

6. Can an open file be occupied? 

7. Can any pawns be moved? 

8. Can any piece be moved? 

If the answer to question 1 is"yes,"the 
program generates moves that reply to the 
check, and these moves are put into a 
"plausible move table/' If the answer to 
question 1 is "no" the program goes to 
question 2, and so on. If the answer to 
question 3 is "yes," no other moves beyond 
question 3 are examined, as castling was 
considered so important that no other 
moves except replies to check and material 
changing moves are of greater importance 
to the program. 

At the beginning of the game only 
questions 4 and 7 put moves onto the 
plausible move list. After the opening 
stage, the other questions are employed in 
the move generation process, with ques- 
tions 2, 5 and 6 being the most often used in 
the middle-game, and questions 5, 6, 7 and 
8 during the endgame. Once there are seven 
moves in the plausible move table, no other 
moves are generated from that position. 
This explains why the programmers felt it 
important to generate the moves in a 
particular order — they wished to prune 
off most of the legal moves in every 
position, and preferred to do so at the 
move generation stage rather than use the 
more modern approach of generating all 
the moves first and then sorting them 
before finally discarding some. 

This simple approach was used to. 
create a tree with a maximum depth of 



4-ply, and therefore a maximum of 7 4 or 
2401 terminal positions requiring evalua- 
tion. In fact a further pruning mechanism 
was employed: a move is only put on the 
plausible move list if it results in an 
increase in score, or at least an equal score, 
to that which prevailed before the move 
was made. With a sophisticated, accurate 
evaluation mechanism this method might 
work quite well. One problem is that the 
program may find itself looking at a 
position in which no move appears to do 
anything but reduce the score for the side 
which makes it, and under these circum- 
stances the program will select the best two 
moves for inclusion in the plausible move 
table. 

Forward pruning mechanisms go a 
long way towards solving the problem of 
having the program examine too many 
junk variations, but to be effective without 
being counterproductive a forward prun- 
ing program must exhibit sound judgment 
when deciding which moves to prune, 
otherwise a superficially bad move which is 
really quite stunning might easily find itself 
eliminated from the search. It is interesting 
to note that the Chess Challenger machines 
do quite a lot of forward pruning, whereas 
the stronger commercially available 
programs do not. This in itself does not 
necessarily indicate that forward pruning 
is difficult to accomplish on a computer, 
and I would be interested to hear from any 
reader who thinks he has found a satis- 
factory way of pruning off a significant 
part of the game tree. I should remind you 
that Bernstein's approach of a (essentially) 
fixed depth search is not to be recom- 
mended. Evaluating all positions at 4-ply, 
irrespective of whether they are quiescent, 
is certain to result in feeble play unless the 
evaluation mechanism is sufficiently 
intelligent to cater for future captures in 
some way, as for example, Donald 
Michie's idea of swapoff values, which will 
be discussed in a future article. 




The report on Bernstein's work 
included the moves of a game played by his 
program against a human opponent. I give 
the game here, with some comments of my 
own, to illustrate the standard of play that 
can be achieved using a primitive search 
process. Here, and in all future chess 
games, I shall employ the notation which is 
becoming standard for computer chess 
games, naming the from square and to 
square using conventional chess notation 
— White has the square a I in his left hand 
corner and hi at his right. 

White: IBM 704 
Black: HUMAN 

1 e2-e4 e7-e5 

2 fl-c4 

The program had not been taught any 
chess openings and was playing on general 
principles, hence it developed a piece. It is 
usually a good rule to develop knights 
before bishops, so question 4 should have 
been split into (4a) Can a knight be 
developed? and (4b) Can a bishop be 
developed? 

2 . . . b7-b6 

3 d2-d3 g8-f6 

4 c 1 -g5 c8-b7 

5 g 5-f6 

Prompted by question 2, but in fact a 
wasted move. Firstly the bishop is more 
useful than Black's knight; secondly, the 
program ought to give more weight to 
developing pieces during the opening, and 
a move such as bl-c3 or gl-f3 is called for. 

5 . . . d8-f6 

6gl-f3 c7-c6 

7el-gl d7-d5 

8 e4-d5 c6-d5 

9 c4-b5+ b8-c6 
10c2-c4? 

An excellent example of why the 
search should not terminate at a fixed 
depth of 4-ply. White can win a pawn here 
by playing 10 f3-e5, because if Black 
recaptures with 10 . . . f6xe5. White will win 
the queen by II fl-el, when Black must 
lose his queen for a rook. But the program 
would only see the variation 10 f3-e5 f6-e5 
11 fl-el e5-el+, and since Black is well 
ahead in material at this point, the 
program would evaluate the position as 
being good for black, ignoring the fact that 
White's next move (dl-el) captures the 
black queen. Using Shannon's B strategy, 
accidents such as this just cannot happen. 

10 . . . d5-c4 

1 1 b5-c6+ f6-c6 
12d3-c4 e5-e4 
13 f3-g5 c6-g6 
I4g5-h3 e4-e3 
15 f2-f3? 

Here a strong move would be 1 5 h3-f4, 
attacking the black queen and preventing 
mate at g2, but again the program would 



162 



CREATIVE COMPUTING 



only have examined to the end of the four- 
ply continuation 15 h3-f4 e3-f2+ 16 fl-f2 
g6-g2 (or b7-g2), and seen that it had lost a 
pawn! 

15 . . . f8-c5 
16fl-el e8-g8 

Of course e3-e2+ does not win the 
white queen because the pawn on e2 is 
pinned -agau\st the black king. But now 
17... e3-e2+ is a real threat. 

1 7 b 1 -c3T? 

Which the program overlooks. There 
is a routine which asks "am 1 in check?"; 
but none which asks "can I give check?", 
and there is no question of the form "can 1 
attack a valuable enemy piece?" Asa result 
of these deficiencies, the program would 
not have put Black's next move in the top 
seven places on the plausible move list 
when considering the replies to 17 bl-c3. 

17 . . . e3-e2+ 

18 h3-f2 b7-f3 
19g2-g3 e2-dl=Q 

20 c3-d 1 g6-c2 

21 b2-b3 a8-d8 

22 h2-h4?? 

Of course the program is totally lost in 
any case, but this move is worthy of 
comment because it illustrates another 
deficiency of forward pruning. The 
answers to questions 1-6 were all "no". 



Question 7 generated six legal pawn moves 
and question 8 generated piece moves, but 
the plausible move list was full after the 
first piece move was discovered, and so the 
program failed to spot the need to defend 
itself against the thread of d8-dl. Had it 
done so it would probably have played 
el-fl, a move which requires a six-ply 
search to discover its refutation. 

22... d8-dl 
23 Resigns 

So with a crude search strategy and 
crude forward pruning, the Bernstein 
program was able to play recognizable 
chess, but extremely weakly. One impor- 
tant lesson that can be learned about 
forward pruning from the last mistake, is 
that your program should look further 
afield if the first move that it comes up with 
is seen to be bad. In this case, after 
examining the 7 chosen moves from the 
root of the tree, the program could see that 
it was losing material to 22 . . . d8-dl, but 
was powerless to stop it. Had it been 
permitted to continue its search it would 
have found a "better" move before too 
long. There is a parallel here between the 
drastic forward pruning method employed 
by Bernstein, and the iterative deepening 
approach used by many of today's 
programs. With iterative deepening, a 
program finds the best move it can after a 
1 -ply search, then it increases the depth to 



2-ply and looks for a better move, then to 
3-ply, and so on, until it runs out of time. 
Similarly, a forward pruning program 
should be permitted to continue its search 
by relaxing the pruning requirements, if it 
cannot find a satisfactory move early on in 
its search. Instead of searching 7 moves at 
each level, Bernstein could have examined 
(say) 5 moves at each level in less than one- 
third of the time, then when the program 
discovered that 21 h2-h4 and its four 
brothers were all dreadful moves, it could 
have examined all the other moves from 
the root of the tree, and the best five 
successors to each of them. This would 
have resulted in only a slight increase in 
total computation time for the move, but it 
would have enabled the program to see the 
immediate tactical consequence over- 
looked by the "best seven" approach. □ 

Bibliography 

The bibliography of material on computer chess is 
enormous. I shall mention only a small number of 
particularly significant works. Further references will 
be given next month. 

Bernstein, A., and Roberts. Michael de V. Computer 
v. Chess Player*. Scientific American, Vol. 198, June 
I95X. pp. 96-105. 

Carlson, F.R., and Zobrist. A.l "An Advice- Taking 
Chess Computer". Scientific American, vol. 22S. 
June 1973, pp. 92-105. 

Shannon. C.E. "Programming a Computer for Playing 
Chess". Philosophical Magazine, vol. 41 (7th series) 
pp. 256-275. 



OSI SOFTWARE FOR OSI OSI 

We Have Over 100 High Quality Programs For Ohio Scientific Systems 



o 

s 
I 



ADVENTURES AND GAMES 

Adventures - These interactive fantasies will fit 
in 8K! You give your computer plain english 
commands as you try to survive. 

ESCAPE FROM MARS 

You awaken in a spaceship on Mars. You're in 
trouble but exploring the nearby Martian city 
may save you. 

PEATHSHtP 

This is a cruise you won't forget - if you survive it! 

Adventures $14.95 Tape or 5Vi" Disk 
$15.95 8" Disk 

STARFIGHTER $5.95 

Realtime space war with realistic weapons and a 
working instrument panel. 

ALIEN INVADER 6.95 (7.95 for color and sound) 

Rows of marching munching monsters march on 
earth. 

TIME TREK $9.95 

A real time Startrek with good graphics. 

BATTLEPAC $17.95 

For the battlebuff. Contains Seawolfe. Starfigbter, 
Bomber and Battlefleet. 



And lots, lots, lots more! 






TEXT EDITORS FOR ALL SYSTEMS!! 

These programs allow the editing of basic 
program lines. All allow for insertion, deletion, 
and correction in the middle of already entered 
lines. No more retyping. 

C1P CURSOR CONTROL (Text Editor) $9.95 

Takes 166 bytes of RAM and adds, besides text 
editing, one key instant screen clear. 

C2P/C4P CURSOR $9.95 

Takes 366 BYTES to add PET like cursor 
functions. Enter or correct copy from any location 
on the screen. 
SUPERDISK $24.95 for 5" $26.95 for 8" 

Has a text editor for 65D plus a great new 
BEXEC*. a renumberer, search, a variable table 
maker and Diskvu - lots of utility for the money. 

We also have 25 data sheets available such as: 

IMPLEMENTING THE SECRET SOUND PORT ON 

THE C1P $4.00 

HOW TO DO HIGH SPEED GRAPHICS IN BASIC 

$4.00 

HOW TO READ A LINE OF MICROSOFT $1.00 

JOYSTICK INSTRUCTIONS AND PLANS FOR 
C1P $3.00 

SAVING DATA ON TAPE $4.00 

THE AARDVARK JOURNAL 

A tutorial bimonthly journal of how to articles 
$9.00 



NOVEMBER 1980 



Our $1 00 catalog contains a free program l.sting, programming hints, lists of PEEK and POKE locations and other stuff that OSI 
forgot to mention and lots more programs like Modem Drivers. Terminal Programs, and Bus.ness Stuff. 

Aardvark Technical Services 1690 Bolton, Walled Lake. Ml 48088(313)624-6316 

CIRCLE 102 ON READER SERVICE CARD (313)669-3110 

163 



o 

s 
I 




I^rsonal 
Electronic 




ransactions 

by Gregory Yob 

I am happy to hear from you, and encourage 
your correspondence. I will try to acknowledge all 
correspondence, and a SASE makes things easier 
for both of us. Please send your letters to 
"Personal Electronic Transactions" c/o PO Box 
354. Palo Alto, CA 94301. 



A PET Long Playing Diskette 

A year ago, in the November 79 
column, I looked at the Micro Technology 
Unlimited music board. (MTU is at PO 
Box 4596, Manchester, NH 03108, and the 
board is about $50.00). This board is a 
D/A converter and makes sound from 
programs originally written by Hal 
Chamberlin for the Kim. 

MTU offers a software package which 
permits the encoding of musical selections 
for play on the D/A board, and Matt 
Ganis & Fred Covitz now have over 25 
musical pieces encoded for play. (A lot of 
work!) These selections are on a PET 
diskette for $25.00 and give some 2 , / 2 hours 
playing time (Indeed, the LP Diskette). 
Contact Matt Ganis, Sheridan Road, 
RD#3, Lebanon, NJ 08833 for a copy. 

If you get these songs, you will need 
the MTU board and the MTU music 
playing software. MTU now has two 
versions, and the one you want is the "old" 
software system. 

Fred and Matt also offer paper 
listings of the encoded songs for your 
reference. 

About Going Too Far 

There's music and there's music. 
Though the PET can be persuaded to make 
sounds with pitch, envelope and timbre, 
there is just no match with what I can get 
for $7.00 at my local record store. I view 
the Hal Chamberlin music programs as 
rather a tour-de-force which extracts every 
last cycle out of the 6502 in an attempt to 
synthesize music. This is not a bad thing, 
except that anyone who loves music winces 
a bit when he hears the PET's music for the 
first time. The limitations are all too clear. 

If the PET's 6502 were a 16 bit 
machine and ran 20 times as fast, the sonic 
quality would be superb. The issues of 
fidelity would then yield to those of 
sensitive performance. If one builds 
additional hardware (See the Mountain 
Hardware card for the Apple) the com- 
puter can be given its original job to do 
the "thinking" part of performing music. 




I am aware that in a few years Hal's 
approach to making music will be very 
effective. However, I am content to wait 
for the hardware and prefer quality later to 
present inadequacies. As more of us 
become skilled with the small machines, 
the "hobby" viewpoint will be replaced 
with a "quality" viewpoint. Keep this in 
mind if you are making a new product for 
the PET. 

My PET Takes Over The World 
(And Blinks Some Lights) 

John Bell Engineering, PO Box 338, 
Redwood City, CA 94064, offers a 4- 
channel triac board for computer control 
of lights and appliances which do not have 
motors, such as your hi-fi set. The cost is 
$44.95 for the fully assembled and tested 
board, and slightly less in kit form. 

The triac is a switch for control of AC 
circuits, and is commonly used in light 
dimmer units. John Bell's unit accepts TTL 
logic levels and controls the triac through 
an opto-isolator. The PET is completely 
isolated from the 1 10V household current, 
so there's no chance of getting you or the 
PET zapped if you plug the cord in 
backwards. 

The board comes as a PC board of 2" 
by 8" with the components mounted on 4 
identical 2" x 2" modules. To make use of 
this unit, I built an enclosure with some 
lamp sockets as shown in Figure 1. For 
demonstration uses, I mounted 9 7-watt 
bulbs in the sockets. For more serious uses, 
either replace the sockets with wall-type 
sockets or get lamp-to-plug adapters from 
the hardware store. 

I wired the sockets in a 1-2-3-4-1-2-3- 
4-1 pattern to permit some simulations of 
advertising signs. For example, by turning 
the lights to: 

Light 1 Light 2 Light 3 Light 4 

ON OFF OFF OFF 

OFF ON OFF OFF 

OFF OFF ON OFF 

OFF OFF OFF ON 

a moving pattern of one lamp on, three 



lamps off will move down the row of 
sockets. 

If you look again at Figure 1 , you will 
notice that the + side of all the isolators is 
set to 5 volts from the cassette port. To turn 
a triac "on," some current must go through 
the opto-isolator, which means the - side 
must be grounded. This means that a 1 sent 
to the User Port turns a lamp off and a 
will turn a lamp on. (Note: If you make this 
circuit, don't try to reverse this. The 6522 
I/O chip is good at pulling current to 
ground and poor at providing a +5 volts 
current. The circuit shown is reliable, and 
reversing things is best done in software.) 

Let's work a few examples in Basic to 
see how a PET can blink some lights: 

The first item is to set the PAJ0-PA3 
lines of the User Port to outputs. POKE 
59459,15 takes care of this. Since the PET 
starts with the output register filled with 
zeroes, all of the lamps will light. To turn 
the lights off, use POKE 59471,15. This 
sets all of the lamp bits to "1." 

Then there's a quick test: 

FORJ«1T0100:POKE59*»71 ,0 :P0KE59A71 , 1 5 :NEXT 

This flashes the lamps for a few seconds 
and leaves them all off. 

Now, let's make the pattern men- 
tioned earlier. That is, turn on Triac 1 , then 
Triac 2, etc. in order, leaving only two or 
three lights on to give a moving effect. Here 
is a first attempt: 



10 DDR-59^59 
20 POKE DDR, 15 
30 UP-59^71 
kO POKE UP, 15 
50 POKE UP,1 
60 G0SUB 1000 
70 POKE UP, 2 



80 G0SUB 1000 

90 POKE UP, k 

100 G0SUB 1000 

110 POKE UP, 8 

120 G0SUB 1000-.G0T050 
1000 FOR J-1T0200-.NEXT 
1010 RETURN 



Lines 10 and 20 define DDR to be the 
User Port's data direction register and sets 
PA0-PA4 to be output lines. Lines 30 and 
40 define UP to be the User Port's data 
address and turn all of the lamps off. 

Lines 50 to 1 20 set a value in the User 
Port and then call the subroutine which is 
simply a brief wait to let us humans see 
what's going on. 

If you try this program, it works, but 
not as you expect it to. A pattern of 3 lamps 






164 



CREATIVE COMPUTING 



XL 






co — 



3 « IU 

■ O O — I 

X "n 

3 §}< 

i 00 3 
1 0> CTl- 

c © lu 

i OHQ. 



© 




o 


n 




o 


m 




1 






CO 


CO 

> 






<n 




© 


*— 

0) 


•6 


b 

to 


c 


a> 





0) 



E £o 



CO s 

8 • 



© • . 

■ZZ >-CM 

b o) m 

SI5 

III 

a> </> a. 
co t: « 

if) 



© 



2 fe 






u - 

U c/} 
c/J Z 



z< 



«-* A* ^ MM 

O ** • « CJ 

c w (0 © fi 

fc © © n, © 

- o = .o -* 
c © O — © 

© c ^ > co 
~ © o « - 

^ C © ^ 

lols|s 

- - 2 a> « 



-1 
< 




























8 








o 

►- 




























S 








o 




































I 




























! 
i 

i 
? 

8 
1 


i 

l 

cc 
< 


1 
1 

s 




I 


























a 

5 




























5 


\ 


o 

8 

-J 


z 
< 

8 


























-j 

a 

o 

i 


■ 

f 

1 


u. 




IU 

i 




! 



2 



5 S 



O CO 



? 

i 



(0 



- il CO 



(0 



■8 2 1 



« 



CO 



u 



I O CD OtO * 

:o-o.c m 5 



CO CO 

© © 
o o 



« = 5 



2.0 



ao 



G31 




5oS2 

2^w 



<N 



CO 





co 

(0 

2 |~©" 

<o c © c , 
— 2 >>Z 

© .2o 

*" © s ® 
§ o «_- 

E © o $ 

2-°.~o 

c E £Q_ 

o 3.2 © 
° c « c 

o a>co 
o « o — 

U- Q. O < 



1 * e 



to 



CO © 
CO 



CO 



« ^ 
5o 



1 5 
< ^ 

cp O 



«r> «i ui 

ass 



3 S 



m 



a. « 



m 



^ 



SIOIAIOIAIA 
CO CO CO CO Oi 

o» V «» en i co co 
t^ f- C4 m 



m 



Uj 



If) If) 



•c o. « CO > 



UJ < UJ < 
CO > CO > 



-& t 



- w o- °- 



h- ^ h- «M 



o2 



m tn m m 

>- .0)0)0)0) 

£ R « « <5 g» 



w-;^ 



rr O 



w - a. 



°? 



CM 



< £ K o. = O I 



5-* •: 



Sin 

lol-TJ 



I to k 



i*?8 

o Z z^SL 
• ° " " 

S ©toco 

r» E »- k - 

fsll 

o x: co co 

^ ■" ^ T" 



h o<< ^S<< 



o c •- 






S5SS 



Q) 



(0 




•"■OIL 

O 0) LI. 

o ©-o 

> c. 

.2 c « 



<E 



tN 



22 



■H 



© o 0> 



P-O 



«o c o 2 w 10 E 

" 5 co « ® ^ *: 



S c\»- 




2 » r: < 2» 2 

_ ♦- v m *-. 



— < "O 
CO © ® 
© .c «J 

■> >. © 
O £} £> 

2=»o 

■D O co 

|co • 

C © 3 
CO -O T3 

2 2 g 



5S 



= » w 



■ O = O 

= o o »- 

Z « <^> Ui 

• • • • 




«• V> K» 









« v> K ^ I C w _. 0^"0" 



• ••••••••• 



-°E5 = 




o o 



CD 



o> to c 
ooa 
m CT 'co 
c © © 
« jc -o ■ 



• « - « 

Q. 3 w 2 «L 



E© © i- 







O 3 z • 

2 2o J", 

2 " o 
i »© w 

o 3 o c 
o c is 

= 2 - a 
&« « co 

»- .E Q.O 



© as o 

1 o = co O 

'£§§■ 2 

! a. o — o 

1 «£ 5 < 



P e ^ 



E O 



co 



TJ © £ c 



© 
E o 



2 -c « •P 



o © l - d 

Set: O 



Q^^.2 



o o 



CO 



a. © 
O =^ 



C !r, Ol 



= © 



2 c 



© _i — 



3 — 3 cb £ 



« 






c Q.C0 

© Q) O 

Tjd2 
C « 2 
« O 3 




© 



t <o 



a. cd "- 
X * c 

O Q. o 



11 c: > -o -a © 
3 c 2 O © !r 

sis* 

|5o8 

< t a. © 



aE.it 



co O 



u 



jo.-Ciiflii 

^ Sh te« _ *- 



E « 



« 



flqscsmi 



© 



© 






a. © 












NOVEMBER 1980 



165 



(PET, cont'd. . . 

on, one off will march across the triacs 
unit. Remembering that a " 1" turns a lamp 
off provides the solution. This is an 
excellent excuse to use the PET's logical 
functions to find the numbers we need: 

PRINT (NOT 1)AND 15 

li» 

PRINT (NOT 2)AND 15 
13 

PRINT (NOT MAND 15 
11 

PRINT (NOT 8)AND 15 

7 

This works out the same as 15-1, 1 5-2, etc. 
Changing Lines 50, 70, 90 and 110 to 
POKE the values 14, 13, 11 and 7 respec- 
tively will now make the program work 
correctly. 

A minor problem with the program is 
that the lamps stay on when you press the 
STOP key. Changing the subroutine 
makes this more graceful: 

1000 FOR J-1 TO 200:NEXT 

1010 GET A$:IF A$« M " THEN RETURN 

1020 POKE UP, 15 

1030 END 

Now a press of any key stops the program 
and turns off the lights. 

As an exercise, I challenge you to 
make these patterns on the lamps: 



•toottoot 

0M00M00 

OOttOOMO 
•OOtiOOM 

(D 

toiototoi 
otoiototo 
•tootioot 
oottootio 

(3) 



••OOMOOi 
• OOttOOM 
OOiiOOMO 

ottooftoo 

(2) 

•oootooot 
•toottoot 
tttotttot 
ttttttttt 

w 



The triacs are each capable of 
handling up to 600 watts. One practical 
application is to use the PET to handle the 
lamps in the house when you are away. Use 
of the TI$ variable and RND for some 
changes of pattern can be effective for 
fooling burglars. 

However, there's a much nicer idea — 
If you order the triacs immediately there's 
enough time to get ready for Christmas. 
Imagine your Xmas tree with four strings 
of lamps controlled by the PET instead of 
those boring flasher units! 

There are Indeed Some Women 

I have a few replies to my request for 
letters from women, and the one repro- 
duced below really tells quite a bit of the 
differences between men and women when 
it comes to computers. Take heed! 

Dear Gregory: 

I thought your February ques- 
tion about women computer freaks 
deserved some sort of answer (I just 
got my copy back from the local 
computer freak)! 

I'm a commercial programmer 




Figure I. 

The upper drawing shows the completed triac enclosure with some low- 
wattage lamps installed. The enclosure is about 30" long by 2" wide by 3" wide. 
The Bell Engineering board fits in the left side which has no lamp sockets. The 
parts cost of this unit is about $25.00. 

The lower diagram shows how the triacs are connected to the PET and the 
lamps. The User Port lines PA0 through PA3 control Triacs I through 4. The +5 
supply is taken from the Cassette Port next to the User Port. These lines are: 

2 or B from Cassette Port. (Check with a VOM) 

C,D,E,F from User Port. 

If you trace the circuit. Lamps LI, L5 and L9 are controlled by Triac 1, 1,2 & 
L6 by Triac 2, LJ & L7 by Triac 3 and L4 & LX by Triac 4. This arrangement 
permits sequencing of the lights in a pattern which moves along the row of sockets. 



working for a consulting company. At 
my current assignment there are 
hundreds of programmers, nearly half 
women. There are several computer 
freaks, but not a great many. I know 
one of them rather well, but he is a 
very unusual person in many ways — 
for one thing, he's really a system 
programmer who happened to get 
hired in applications. He's also single. 
Most of the people here, not just the 
women, have things to do when they 
get home. When they do have leisure 
time, they generally prefer not to do 
computing. As for those people who 
are not programmers, you may have 
noticed that high-technology hobbies 
are usually practiced by men — such 
activities as assembling electronic 
kits, fixing cars, and building model 
planes attract a few women, but 
mostly men. 

Myself, I study music and play 
with two groups; I'm renovating a 
brownstone, I garden, do crafts and 
needlework, and belong to various 
clubs. I do my computing at work, 



where I get to play lots of games, from 
Office Politics to UNIX trial. 

It occurs to me that a lot of 
personal computing involves games 
like Space Invaders and Adventure. 
You may have noticed that women 
very seldom play these games. I like 
them even less than most women do; I 
find them aggravating and a waste of 
time. 

As a women programmer, I am 
interested in applications, however 
pedestrian, that fill a need, and in the 
human/ machine interface. I would be 
interested in doing some computing 
for the various voluntary organiza- 
tions I belong to - - except that I think 
their computing should be centralized 
(shared) rather than distributed, to 
avoid waste of resources. Mailing 
lists, hotline sources, and a musician's 
directory may not be sexy, but there is 
a need. I just can't get into a better 
WUMPUS. 

Very truly yours, 

Sandra Greer 

Brooklyn, NY 



166 



CREATIVE COMPUTING 



■W %* -W" 3* •**»<■ >l_ 



^w o ^ 



\\i// 











I 

I 
I 

I 

I 



APPLE KIM AIM65 



INEXPENSIVE CONTROL SOLUTION FOR 

HOME SECURITY • ENERGY CONSERVATION 

GREENHOUSES • ENVIRONMENTAL CONTROL 

INDUSTRIAL CONTROL • LABORATORIES 

CmC's mDAC system now includes an interface to the BSR X- 10 remote 
control modules. These low-cost modules allow control over lamps, 
motors and appliances. With the CmC X-10 interface your computer can 
control 256 separate devices. Lamps can be turned on or off. dimmed or 
brightened. Alarms, kitchen appliances, hi-fis, TVs, motors, pumps, 
heaters and more can be put under your computer's control. 

Direct plug- in and software for most computers. 

Circle the reader service number, call or write for our latest catalog. 



c 



c 



i 



CONNECTICUT microCOMPUTER , Inc. 
150 POCONO ROAD 
BROOK FIELD, CONNECTICUT 06804 

TEL: (203) 775-9659 TWX: 710 456 0052 



i 



i 
i 
i 



PET PRODUCTS 

Programs — Workbooks 
for Floppy Disk — for Cassette 




See your 
Dealer 



V 

sw-r 

tW-4 

tw-s* 



MKXMAMS 

mailing list ayatsm 



WORKBOOKS 

WB-1 a««0ng Start** mm Your P€T 
WB-2 • J €T tiring and Array Handling 

ACCOUNTS kaaptracfcolwnoowaayoo how much g'* ^. c ,,^ n| |Tt 
MCCMT craata un6 maintain data ftlat .- . 

CALENOAM appointments, maatinga at a glanca 



$3 95 
$3 95 
$4 95 



SU> 



WB-5 MUciWaniem PCT f 

WB-6 PCT Control and Logic 

Thaaa programs ara apacial purpoaa data baaa managamant ayatamt Thay all can 

• Sort numaric or string fialda 

• Sdtact baaed on numaric or string (>) 

• S atact baaad on substring match 

a Sslsct baaed on rang* of antry number 
Prioss: $9.90 aach for programs using cassatta storage for data 
$12 96 aach using saqusntial floppy disk storage for data 



SI1.Odp4.CC 

NM 97944 



$4 95 • 

$3 952 
$3 95 A. 

a 



$2 00 for shipping and handling 
Money back guarantee 



P.O. Boa 

Loa 




On bank card orders, give sll numbers 

PUT is s trademark of Commodore Busmen Machines 
e PIT • PCT • PCT • PIT • PIT • PET • *ET •■CT»rtT« 

CIRCLE 193 ON READER SERVICE CARD 



r 

e 

t 

e 

i 

e 

& 

e 

r 

e 
P1T«P*T 



>CXX» 



I 

i 
i 

i 

i 
I 
I 
1 

i 

I 

« 
I 
i 



t 







Simple to use — low cost — designed for NEC 5530 Spinwriter and 
Centronics parallel printers. Works with WORDPRO and other soft- 
ware. Switch for upper-lower case conversion or upper case only. 

Plugs into the PET and into the printer — all cables and connectors 
included — extra IEEE connector for Commodore disk drives. 

Uses BASIC PRINT statements — no machine code needed. 

Device address selectable — works with other peripherals. 
$129 complete — compare to others at $225. 
Generous dealer discounts. 

Assembled and tested. Our usual 30 day money back trial period 
applies. 
Order direct or contact your local computer store. 

VISA and M/C accepted - send account number enp.rafon date and sign order 
Add $3 per order for shipping and handling - foreign orders add 10% for air postage 
Mention this magazine with your order and deduct 2% 



Connecticut microcomputer, Inc. 

34 Del Mar Drive, Brookfietd, CT 06804 
203 775-4595 TWX 710 456-0052 




wwwj^w ** -u- -w »e a*. >L>g 



^ssss^^s^KRELL SOFTWARES®^ 
p*^ presents for the TRS-80 
~ PET, Apple II, and Apple II 



Plus 



COLLEGE BOARDS 



The best way to sharpen your skills for the College Board SAT Exams is 
to work on actual examinations. Each of these 4 programs confronts the 
user with a virtually limitless series of questions and answers. Each is 
based on past SAT exams and presents material of the same level of diffi- 
culty and in the same form as used in the verbal and mathematical por- 
tions of the College Board Examinations Scoring on each exam is pro- 
vided in accordance with the formula used by College Boards 
COLLEGE BOARD-VOCABULARY 19 95 

COLLEGE BOARD— WORD RELATIONSHIPS 19.95 

COLLEGE BOARD— MATH PART A 1995 

COLLEGE BOARD— MATH PART B 19 95 

Complete Set 59 95 



TIME TRAVELER 



The best of the adventure games. Confronts player with complex deci- 
sion situations and at times, the demand for real time action. Using the 
time machine, players must face a challenging series of environments 
that include, the Athens of Pericles, Imperial Rome. Nebuchadnezzar's 
Babylon. Ikhnatons Egypt. Jerusalem at the time of the crucifixion, the 
Crusades. Machiavellis Italy, the French Revolution, the American 
Revolution and the English Civil War Deal with Hitler's Third Reich, the 
Vikings, etc. Involve yourself with historical military and government 
operations, markets, etc. in fascinating game situations Each game is 
unique! $24.95 



PET to NEC and 

CENTRONICS 

PRINTER ADAPTER 



LOWEST COST 
COMPLETE 
INTERFACE ON THE 

MARKET 



THE SWORD OF ZEDEK 



Fight to overthrow Ra. the Master of Evil. In this incredible adventure 
game you must confront a host of creatures, natural and supernatural To 
liberate the Kingdom, alliances must be forged and treasures sought. 
Treachery, deceit and witchcraft must be faced in your struggle as you en- 
counter wolves, dwarves, elves, dragons, bears, owl, ores, giant bats, 
trolls, etc Each game is unique in this spectacular and complex world of 
fantasy. $24.95 

•All programs requ.re 16K • TRS 80 Programs requ.re Level II BASIC • Apple programs requ.re Applesoft BASIC 

Send check or money order to Krell Software 

21 Millbrook Drive, Stony Brook, NY 11790 (516) 751-5139 
CIRCLE 215 ON READER SERVICE CARD 



NOVEMBER 1980 



167 






PET, cont'd. ! . 

The PrestoDigitizer™ Tablet 

An unusual graphics entry device, the 
PrestoDigitizer (Contact: Innovision, PO 
Box 1317, Los Altos, CA 94022. Price: 
$50.00) is now available for the PET. My 
first reaction was "What? You can't get a 
graphics tablet for $50!" Indeed, the 
PrestoDigitizer is not a graphics tablet. 

The PrestoDigitizer consists of a 
stylus and a PC board mounted in a 5" x 5" 
plastic base with a connector for the PETs 
User Port. On the PCB is a pattern of 
copper foil which is described in Figure 2. 
As you move the stylus from one foil 
region to another, the PET will see a 
changing pattern on the User Port bits, and 
with appropriate software the digits 0-9 
and letters A-Z may be recognized. For 
example, the sequence: 1 2 4 5 6 7 may be 
used to recognize the letter Z. (In most 
PrestoDigitizer programs, touching Re- 
gion 7 on the right signifies the end of a 
letter.) 

My second reaction was, "Hey, wait a 
minute! Something this limited and simple 
isn't worth $50.00." Well, after a look and a 
bit of thought I conclude the Presto- 
Digitizer is worth $50.00 for some people. 
If you are handy with a keyboard, the 
PrestoDigitizer will be only a toy. If you 
don't get along well with keyboards, this 
gadget will be very worthwhile. 

The documentation for the Presto- 
Digitizer is excellent. I received descrip- 
tions of three programs (included on a 
cassette) which indicate some starting uses 
for the PrestoDigitizer, a reprint of an 
article in Recreational Computing describ- 
ing the principles of the PrestoDigitizer in 
detail, and several pages devoted to how to 
use the PD in your own programs. 

Two of the programs, QUIZZER and 
HANDWRITING, have a "learn" mode in 
which your own patterns of motion for the 
digits and letters are entered into the 
program. I do have a small complaint on 
these, that on some digits and letters I 
made an error, and there was no obvious 
way to re-enter a letter's pattern. One 
simple method is to have a short dialog 
like: 

I NOW HAVE THE LETTER D. 

PLEASE RE-ENTER THE D. 

THANK YOU. I NOW KNOW 

WHAT D LOOKS LIKE. 
Two successive entries of the same letter 
pattern would "memorize" the pattern. 

In learning an alphabet, the Presto- 
Digitizer strikes a nice balance between 
your normal variations in handwriting and 
the simplicity of the device. The only 
meaningful thing is the sequence of regions 
contacted by the stylus. The time you take, 
or lifting the stylus from the pad makes no 
difference. 

Before you dismiss the PD as a toy, 
bear in mind that children, non-typists just 
learning computers, and persons with 
motor handicaps of the hand will find it a 



7 



Figure 2. The PrestoDigitizer Pad 

Seven copper foil regions are placed in a 3" x 3" square on a printed circuit 
card. Each of the regions (except #4) are connected to the PET's User Port ( PA0- 
PA5). By grounding a region with the stylus, the PET detects a contact and a series 
of contacts can be used to define a letter. For example, the series 1-2-4-5-6 can 
define the letter "Z." Region #7 is normally used to indicate "end of character." 



valuable tool, at a very reasonable price. 
When the PD is in "learn" mode, any 
sequence is learnable as any letter. All that 
is needed is that each letter have a unique 
sequence. 

If any of you out there would like to 
realize the PrestoDigitizer's recognition 
and learning programs in machine lan- 
guage, I am most interested. Innovision 
would like to see such a package, especially 
one that permits the use of a PD in place of 
a keyboard, and I know one person who 
could use this. Such a program would put 
the entered letters into the PET's keyboard 
buffer to let the full capabilities of the PET 
be used. (My friend programs the PET, 
though very laboriously.) 

Machine Language Goodies #3, 4, 5 & 6 

In some video games you are driving a 
car along a roadway. The car remains in 
the center of the screen and the road moves 
down the screen. I thought it would be fun 
to do a similar thing with the PET's screen 
by moving the entire screen up, down, left 
or right with wraparound. Characters 
going off one edge of the screen will appear 
on the opposite edge. 

Since this means moving some 1000 
characters around, I wrote these functions 
in machine language to be called by the 
SYS function. You don't want to wait 30 
seconds to shift the screen one position. 

I then wrote a small "drive-it-around" 
program to illustrate how these sub- 
routines may be used. Figure 3 shows the 
HEART DRIVER program as listed on 
my printer. (There's far too many DATA 
statements to attempt typing via my 
Selectric without errors. Unfortunately, it 
takes only one error to smash machine 
language!) 

Before looking at the program in 
detail, some of the listing rules need to be 



explained. If you look at Line 100, you will 
see the phrase ROUTINEsp LOADED. 
The "sp" indicates that a blank went 
between the two words. On Line 170, the 
letters M, B, and N are preceded by the 
tilde (sv) mark. This means that the 
graphics characters Shift-M, Shift-B, and 
Shift-N are used here. If you make the sub- 
stitutions, the familiar numberpad-moves 
diagram will appear. Note that blanks, i.e., 
between the "sp"s do not count. To be 
precise, blanks in a program line are in the 
program, except inside quote marks. All 
blanks in quotes are replaced by "sp"s. 

Cursor movements are indicated by 
"up", "dn", "1ft", "rt" for Cursor Up, 
Cursor Down, Cursor Left, and Cursor 
Right, respectively. In Line 530 is a "rvs" 
which stands for the Reverse Fie\d key. 

So, how does this thing work? Lines 
10 through 100 read the DATA statements 
and put the 6502 code into the first and 
second cassette buffers. (Take heed! No 
Tape I/O permitted!). Unfortunately I 
couldn't fit it all into the second cassette 
buffer. 

Line 110 is a delay to show the 
ROUTINE LOADED message, and Line 
115 eats up any characters in the input 
buffer. The program returns to Line 1 15, 
and up to 9 characters may be lurking to be 
GETted. Lines 120 to 230 give instructions 
and wait for a keypress to begin. 

Line 240 defines where the "currently 
down key" location is. For "old" PETs this 
is 515, and "new" PETS use 151. Location 
50003 is a zero for "old" PETs and a one 
for "new" PETs. This is a convenient way 
to make programs run on both model j 
ROMs. (Thanks to Len Lindsay for this 
tip. See the July 79 Kilobaud, Pg 72 for 
more regarding the "new" and "old" 
ROMs.) 

Line 250 clears the screen. Lines 260 
to 270 place grouips of Shift-Q (solid balls) 



168 



CREATIVE COMPUTING 



Figure 3. Heart Driver Program 

The listing conventions of this program are described in the text. 



HERRT DRIUER 



10 
20 

100 
110 
115 
120 

130 

140 

150 

160 

170 

180 

130 

200 

210 

212 

214 

218 

220 

230 

240 

250 

260 

262 

263 

264 

265 

266 

267 

266 

26S 

270 

275 

280 



290 



RD-690 

READ B:IFB<0 THEN 100 
POKE RD,B:RD-RD+1:GOTO20 
PPINT-ROUTINEsp LORDED" 
FORJ-1TO500:NEXT 
GETR«: IFRSV "THEN115 
PRINT'clr WOULDsp YOUsp LIKEsp 

TOsp GOsp FORsp Rsp SPIN? 
PRINT: PRINT "JUSTsp PRESSsp THEsp NUMBERsp KEYS 

PRINT "TOsp DRIUEsp YOURsp CRR 

PRINT 

7sp sp 6sp sp 9 
sp ~Msp ^Bsp ~-N 
4~Csp 5sp "C6 
sp ~Nsp "Bsp "M 
lsp sp 2sp sp 3 



sp 
sp 

sp 
sp 



SP 

sp 

sp 
sp 
sp 



sp 
sp 

SP 

sp 
sp 



PRINT 

PP I NT- 
PRINT 

PRINT 

PRINT'sp 

PRINT 

PRINT "YOURsp GORLsp ISsp THEsp "Ssp SPOT 

PRINT'GOODsp LUCK 

PPINT 

PFINT"PPESSsp RNYsp KEYsp TOsp BEGIN... 

GETRf : I FRS- " "THEN230 

PK-515: IFPEEK( 50003 )THENPK-151 

PRINT'clr "; 

FOR J-1TO20+15»RND( 1) 

W-32768+1000»RND( 1 ) 

FOR K-1TO10+15»RND( 1 ) 

0N1+4*RND( 1 )G0T0265, 266.267,268 

W-W+l :G0T0269 

W-W-1-.G0T0269 

W-W+40:GOTO269 

W-W-40:GOTO269 

ITW< 327670RW >33767THEN262 

POKE W,B1:NEXTK,J 

POKE32768+1000*RNTK 1) , 83 

PRINT'dn dn dn dn dn dn dn dn dn dn dn dn 
rt rt rt rt rt rt rt rt rt rt rt 
rt rt rt rt rt rt rt rt ~ZI f t '*. 

U-863 : D-905 : R-793 : L-B27 : C-33267 



300 REM LOOK FOR MOUE 

305 T-TI 

310 Z-PEEK(PK):IFZ-255THEN310 

320 IFZ-34THEN310 

330 PRINT' + 1 ft "; 

340 IF2-50THEN SYSD:GOTD500 

350 IFZ-18THEN SYSU:GOTO500 

360 IFZ-41THEN SYSL:GOTO500 

370 IFZ-42THEN SYSR:GOTO500 

380 IFZ-5BTHEN SYSD : SYSR : GOTOS00 

390 IFZ-57THEN SYSD : SYSL : GOTO500 

400 IFZ-26THEN SYSU : SYSR : GOTO500 

410 IFZ-25THEN SYSU : SYSL : GOTO500 

420 PRINT ""Zl ft ";:GOTO310 

490 REM CHECK FOR COLLISION 

500 Q-PEEK(C) 

502 IFQ-20 OR Q-43 THEN 420 

505 IFQ-83 THEN 530 

510 IFO-81THEN540 

515 GOTO420 
520 REM COLLISION FOUND 

530 PRINT'rws I ft I ft I ft I ft I ft I ft 
I ft I ft I ft \ ft GOTsp THEREsp IN" 
INT( (TI -T)/60)" I ft sp SECONDS" 

535 FOPJ-1TO2000:NEXTJ:GOTO115 

540 PRINT"~Qlft "; 

550 ON 1+4*RND< 1 ) GOTO 560,570,580,590 

560 SYSU : GOTO600 

570 SYSD:GOTO600 

580 SYSR : GOTO600 

590 SYSL:GOTO600 

600 IFRND( 1 )>.3THEN550 

610 FORJ-1TO500:NEXTJ 

620 GOTO 500 



1000 DRTR 255,127,0,128,39,128,136 

1010 DRTR 2,151,131,191,131,162,11 

1020 DRTR 181,10.157,122,2,202,16 

1030 DRTR 248,162,11,189,178,2,149 

1040 DRTR 10,202,16,248,96.162,11 

1050 DRTR 189,122,2.149,10,202,16 

1060 DRTR 248,96,216,24,165,10,105 

1070 DRTR 40,133,10,144,2,230,11 

1080 DRTR 24, 165, 12,105,40,133,12 

1090 DRTR 144,2,230,13,24,165,14 

1100 DRTR 105,40,133,14,144,2,230 

1110 DRTR 15,96,216,56,165,18,233 

1120 DRTR 40, 133,18,176,2,198,19 

1130 DRTR 56,165,20,233,40,133,20 

1140 DRTR 176,2,198,21,96,32,190 

1150 DRTR 2, 162,25,32,43,3,32 

1160 DRTR 222,2.202,208,247,32,211 

1170 DRTR 2.96,160,39,177,12,72 

1180 DRTR 177,10,145,12,136,208,249 

1190 DRTR 104,145,12,96,32,190,2 

1230 DRTR 162,25,32,77,3,32,222 

1210 DRTR 2,202,208,247,32,211,2 

1220 DRTR 96, 160, 1, 177,10,72.177 

1230 DRTR 12,145,10.200,192,40,208 

1240 DRTR 247,104,145,10,96,32,190 

1250 DRTR 2.162,24, 160,40,177,10 

1260 DRTR 145,16,136,208,249,160,40 

1270 DRTR 177,14,145,10,136,208,249 

1260 DRTR 32,222,2,202,208,241,160 

1290 DRTR 40,177,16,145,10,136,208 

1300 DRTR 249,32,211,2,96,32,190 

1310 DRTR 2, 162,24, 160,40,177,20 

1320 DRTR 145,16,136,208,249,160,40 

1330 DRTR 177,18,145,20,136,208,249 

1340 DRTR 32,1,3,202,208,241,160 

1350 DRTR 40,177.16,145,20,136,208 

1360 DRTR 249,32,211,2,96 

1370 DRTR -1 



on the screen. I don't have room to explain 
the method, so it is a puzzle for you to 
figure out. Line 275 puts the heart symbol 
on last as the goal to reach. In 280, the 
cursor is moved to the center of the screen 
and the diamond printed to indicate the 
car. That's 12 down and 19 to the right 
from the home position. Line 290 defines 
the SYS calls for moving the screen. These 
are: 

863 U Move Screen Up One Unit 

905 D Move Screen Down 

793 R Move Screen Right 

827 L Move Screen Left 

If you RUN the program and press the 
STOP key, try SYS to each of these and see 
what happens. Then try a loop like FOR 
J=l TO 40: SYS 793:NEXT 

C is defined to be the center of the 
screen, which is where the car is positioned. 
The time is noted in Line 305 and Line 310 
checks for any key down. (255 is the no 
keys pressed value.) The PET uses some 
odd codes to show which key is down, and 
the values used here are: 

58 (7 key) 50 (8 key) 57 (9 key) 
42 (4 key) 34(5 key) 41 (6 key) 
26 (1 key) 18 (2 key) 25 (3 key) 

I am too short of space to explain how you . 
find these values — a topic for another 
time. Lines 320 to 410 print a "+" to show 
where the car was, and then move the 
screen in the direction opposite to the car's 
intended motion. This gives the illusion of 
moving the correct direction. Notice that 
the diagonal moves are done by two SYS 
to move Up or Down and then Right or 
Left. Line 410 corrects for non-directional 
keys being pressed by restoring the car's 
image. 

Once the move is made, we check for a 
collision by looking at the screen's center 
to see what's there. A space or a + is 
checked for in Line 502, and the heart is 
looked after in Line 505. (The PET's 
POKE codes to the screen are not the ASC 
values for the letters. Yet another topic!) 
The game ends in Line 530 with a time 
taken message and a jump back to the start 
at Line 1 1 5. A collision with a dot produces 
some random moves in Lines 540 to 600, 
and then a delay. We again check for a dot, 
and repeat the collision process until the 
car lands on a non-dot. Try a crash — it's 
kind of fun! 

I leave you this month with a 
challenge and promise. Using the SYS calls 
for moving via the 7, 8 and 9 keys only, do a 
driving along a road game with the road 
boundaries scrolling down the screen. The 
catch is that the road is a lot longer than 25 
lines. For starters, make a "track" that is 
200 lines long, or about 8 screens in length. 
How about a few potholes, ruts, and oil 
slicks for fun? Note I do not want to see a 
randomly created track, but one that 
repeats after a while. The promise? I will 
publish your program here. 



NOVEMBER 1980 



169 




Report from the Forward Observer 

Atari is working on a Pascal for their 
computers, scheduled to be released in the 
first half of 1980 if all goes right. Their 
Pascal will not be USCD Pascal, but will 
have a number of differences. It will 
compile into either P-Code or 6502 
machine language. 

Disk Operating System 2 should be 
ready about the time this column appears. 
The primary problem with DOS 1 is that 
random files do not work, although the 
new DOS is significantly faster and uses 
less operating memory. The memory is 
saved by using overlay methods, keeping 
some of the DOS out on the disk unless it is 
needed. The new DOS will cost present 
disk owners $25 (Part number CX 8104). 
There is another problem involved. The 
speedup of the DOS requires a different 
formatting routine. Unfortunately, the old 
formatting routine is in ROM, so the only 
way to take advantage of the higher speed 
is to buy formatted disks direct from Atari. 
The scheduled price is $25 for 5 (Part 
number CX 8110). 

Another scheduled Atari project is a 
mailing to all registered Atari owners 
containing information on software 
publishers and others supporting the Atari 
computers. With projects like this and 
Atari releasing documentation to warranty 
card registrants, it is important to return 
your registration card. If they don't have 
your address, they can't send you any- 
thing! 

Atari has been negotiating with 
Microsoft for a new Atari Basic. If things 
go smoothly, look for the new Basic in mid 
1981. 

SoftSide magazine began to cover the 
Atari computer with their August issue by 
printing three complete games and several 
articles. Regular coverage of the Atari is 
promised. More information should be 
available in their ad elsewhere in this issue. 



George Blank, Foster Road, Milford, NH 03055. 



George Blank 



They Said it Couldn't be Done! 

My taste in poetry can be decidedly 
lowbrow, but I have always liked this little 
ditty: 

They said it couldn't be done 

So he went right to it. 

He took that thing that couldn't 
be done . . . 

And couldn't do it. 
James Garon of SoftSide has a different 
tale to tell. According to the Atari manual, 
graphics 8 gives you only two shades of one 
color. James discovered that when you 
draw a vertical line in an odd numbered 
column, it is a different color from a 
vertical line in an even numbered column, 
and drawing in both columns gives still 
another color. Here is a little program to 
demonstrate the method: 

10 GRAPHICS 8 

20 COLOR 1 

30 FOR X = 1 TO 319 STEP 2 

40 PLOT X f : DRAWTO X,40 

50 NEXT X 

60 FOR X • TO 318 STEP 2 

70 PLOT X f 41 : DRAWTO X,80 

80 NEXT X 

90 FOR X = TO 319 

100 PLOT X f 81 : DRAWTO X f 120 

110 NEXT X 

120 PRINT" IMPOSSIBLE?" 

130 GOTO 130 

According to the friendly experts at 
Atari, if you use assembly language it is 
possible to get 128 colors on the screen at 
the same time in high resolution. 

Visicalc Update 

Visicalc should be ready from Per- 
sonal Software by the time this column 
appears, or shortly thereafter. Since Doug 
Green wrote an excellent review in the 
August issue of this magazine, I will not 
review it, but simply report that I have 
been using a preliminary copy with the 
instructions from the Apple version, and it 
is the same program. 



Visicalc is the first Atari program I 
have encountered with its own disk 
operating system. You use it without a 
ROM cartridge, and it boots and loads 
automatically from the disk. 

Intelligence Report 

Four of the things that make the Atari 
computers special are custom integrated 
circuits built into the computer. These four 
chips go by the names PIA, ANTIC, 
CTIA, and POKEY. Many of the features 
that set the Atari apart from earlier and 
more primitive personal computers are 
located in this hardware. 

The PIA chip controls information 
going to and from the joysticks, paddles, or 
controller jacks and also handles interrupt 
requests. There are two standard peri- 
pheral interface adaptors (That is what 
PIA means). In last month's column I 
described how to use these ports. 

The ANTIC chip controls direct 
memory access for fast graphics and 
transfers of information, the non maskable 
interrupts, vertical and horizontal scrol- 
ling of your TV set, and contains the 
position registers for the light pen. 

The CTIA chip offers priority control 
so that objects can overlap, such as the 
basketball players in Atari Basketball. It 
can also control up to 4 "players" and 4 
"missiles". A player is an object that can be 
displayed on the screen which is a 
maximum of eight bits (or graphics blocks) 
wide. A missile is an object that is no more 
than 2 bits (blocks) wide. There is no limit 
on height. The four missiles can be 
combined into a fifth player, as is done in 
the basketball game to form the ball. This 
chip also maintains the colors and 
luminances of the objects, detects col- 
lisions between the objects, and controls 
their horizontal position. Yet another 
function of this busy chip is to monitor the 
keyboard switches and paddle and joystick 
triggers. 

The POKEY chip is responsible for 
scanning the keyboard, controlling the 
serial port to the printer, disk drives, and 






170 



CREATIVE COMPUTING 



r 



cassette recorder, converting the position 
of the eight paddle controls to a number 
the computer can read, creating the sound 
for the four audio channels, updating the 
internal timers, and random number 
generation. 

The actual use of these chips for fancy 
graphics is too complex for this column. 
However, those of you who seek more 
information can find a description of 
ANTIC graphics in the August 1980 issue 
of Byte, written by Chris Crawford and 
Lane Winter of Atari. Beware; the method 
is much too tough for beginners. 

Programming Feature 

Larry Seftor of Alexandria, Virginia 
works by programming a Texas Instru- 
ments ASC Computer in Fortran. At 
home he plays with an Atari 400. Larry 
sent in an error handling routine to share 
with other Atari owners. 

If the error is simply an input error 
(error code 8), the program returns to the 
same line and tries again. Otherwise, it 
prints out the error number, the line the 
number is in, and then lists the line for 
editing. This basic technique can be 
expanded to handle many other kinds of 
errors as you seek to make your programs 
fail safe. If you are maintaining a glossary 
of computer terms, you should know that 
this process goes by the esoteric and highly 
technical term of "Idiot proofing". □ 

10 TRAP 1000 (First line of program) 

(Your program fits here) 

1000 TRAP 1000 : ET = PEEK(195) 
* 256 + PEEK(186) 

1010 EL = PEEK(187) 

1020 IF ET <> 8 THEN PRINT : PRINT" 

ERROR ";ET; 

" IN THE FOLLOWING LINE:" 
: LIST EL : STOP 
1030 GOTO EL 









"Computer Room? Switch to bad 
mood tapes and send out nasty 



letters. 



n 



©Creative Computing 



>llGri Software 



Trivia Unlimited 



SC0RE= 5 



QUESTION # ? 



Cassette CS-7001 
$11.95 

DiskCS-7501 
$19.95 



INUENTED THE STEAMBOAT 



1. ROBERT FULTON 

2. SAMUEL MORSE 

3. THOMAS EDISON 

4. SAMUEL SMITH 



Test your expertise in any of seven areas: 
science, geography, history, computers. 
TV and movies, English language, or trivia 
Speed and number of correct answers de- 
termine your score in this challenging ser- 
ies of multiple-choice quizzes Over 200 
questions in all Requires 24K 




Haunted House 





Cassette CS-7003 
$11.95 



Requires 32K 



It is 6:00 and you have until 
midnight to find the secret 
passageway out of a haunted 
house. During your search, you 
may find skeleton keys to open 
locked doors, good luck 
charms, friendly ghosts, evil 
spirits, and skeletons. The 
sound effects (creaking doors 
and stairs) add to the eeriness. 
The house layout changes in 
every game. 



creative 

corapatiRg 
software 



Other Atari Software — 

• Outdoor Games (Forest Fire, Fishing Trip, 
Treasure Island 1 & 2), Cassette CS-7002, $11.95 

• Outdoor Games and Haunted House, 
Disk CS-7502, $24.95 

• Hail to the Chief (Presidential election 
simulation) Cassette (32K) CS-7201, $24.95; 
Disk (40K) CS-7701, $24.95. 

Order using handy postcard bound 



CIRCLE 300 ON READER SERVICE CARD in back of magazine. 



NOVEMBER 1980 



171 



Apple 



-\ 



Chuck Carpenter 



Correspondence is always welcome and a 
response will be made to those accompanied 
by a SASE. Send your letters to: Chuck 
Carpenter, 2228 Montclair PI., Carrol Iton, TX 
75006. 




In the May '80 issue, the Apple Cart 
column included a section on assembly 
language fundamentals. To continue with 
additional fundamentals, this column will 
describe the principals of indexing. 
Another 6502 microprocessor feature 
includes the use of interrupts. The second 
part of this column will describe simple 
interrupt control hardware (to monitor 
remote switches) and a machine language 
program featuring indexing. The circuit 
and program will let you monitor the 
"outside world" and run your favorite 
program at the same time. 

Indexing Principals 

Sequencing a data table to print 
character strings is easily handled in 6502 
assembly language by "indexing" the table. 
Apple's 6502 microprocessor includes a 
variety of indexing instructions. Two of 
these, absolute indexing and one form of 
indirect indexing will be described here. 
Once the principals of indexing are 
understood, you can easily master each of 
the 6502 indexing modes. The examples 



included will help you gain this under- 
standing. 

Absolute Indexing 

Absolute indexing is accomplished by 
locating the characters in a table relative to 
the starting address of the table. To 
determine the relative position in the table, 
a displacement value is added to the 
starting address. In the 6502, there are 3 
registers used for processing data in a 
program. One is the accumulator or A 
register and the others are the X and Y 
index registers. Absolute indexing uses the 
A register — to contain the base address — 
and the X or Y register to hold the offset or 
index value. In our examples, we'll use the 
X register. This sounds confusing so let's 
look at an example. 

In this program line example, the main 
program starts at address $0800 (the $ 
symbol means a hexadecimal number). 
The assembled machine language repre- 
sents the indexing opcode and starting 
address (operand) of the table. Remember 
that the operand determines the address 



ADDRESS 



MACHINE 
LANGUAGE 



LABEL INST OPERAND 



0800- 



Opcode 
A d d r e s s J 



xx xx xx INDEX LDA 



*0900rX 



Opcode 



Operand- 



COMMENT 



Index Tab I e 



Symbol ic Labe 1 



Mnemonic Instruction 



Table Address + 
Character displacement 



mode which modifies the instruction and 
establishes the final opcode. This operand 
indicates an indexing operation; address 
$0900 plus the current value of the X 
register. The character table starts at 
address $0900. Each character in the table 
will be found at the absolute value of X 
added to the base address $0900. The value 
of X is the displacement value. 

Another View Point 

One more example will help show the 
mechanism of absolute indexing. Let's 
examine a program segment that will 
display a character string. For instance, if 
you wanted to display your name and the 
year, you might set up a tab\e as shown in 
Figure I. First, you need to start with the 
offset value for the table in the X register. 
In this case we start with zero. The first 
character is at address $0900. So, we don't 
need a displacement for the first character. 
Then we load the accumulator with the 
character found at address $0900 plus the 
current value in the X register. The 
operand $0900, X indicates this condition. 
That is, the accumulator is to hold the 
character at base address $0900 indexed 
absolute by the value of the X register. The 
first time through, the character loaded in 
the accumulator will be the first letter of 
your name. This character is printed out on 
the screen by the monitor routine at 
address $FDED. Next the X value is 
compared to the value for the end of the list 
+ one. Because the X register and the end- 
of-list value are not equal, the routine 
branches back to the label INDEX to get 
the next character in the table. 

The second time through, the value in 
the X register is now $01 and the 
accumulator will be loaded with the 
character in $0901. The print-out, incre- 



172 



CREATIVE COMPUTING 



f 




TM 




From MUSE, the Leader in Quality Software 

With its easy to use key sequences, the ST II Word Processing system provides fast 
editing of letters, manuscripts, books, or other printed material. Automatic column 
totals, column alignment, and on screen tabbing eliminate tedious formatting and 
make Financial and Summary Reporting a snap Data Base Management is simplified 
by the most advanced file handling system and makes a world of information instantly 
available ($150.00). 

Completely new documentation designed for first time users and a backup copy of 
the program disk is included with every program. 




TRADE-INS!! 

Trade in your present word processor for Super-Text II. 
manual, and proof of purchase. 



Send documentation 



Trade-in Value: 

Super-Text $100.00 

Easy Writer $50.00 

Apple Writer $50.00 

Apple Pie $50.00 




SUPER-TEXT ADD-ON MODULES 
For Even More Versatility 

Personalize and customize form letters with the ultimate letter writer, the Super-Text 
Form Letter Module ($100 .00). Use it with the Address Book Mailing List Program 

($49.95) or by itself to end repetitious composition of letters, contracts, leases, and 
other documents. Add the Super-Text Terminal Module ($75.00) and a D. C. Hayes 
Micromodem to communicate with any computer in the world. 

Coming soon . . . The Super-Text Virtual Memory Assembler— the MUSE in-house 
development system. 

Apple II or Apple II Plus (48K). 



For a free catalog or the name of your nearest MUSE Dealer, contact: 



MUSE 



SOFTWARE 



TM 



I 



Apple is a TM of Apple Computer Inc 
Easy-Writer is a TM of Cap'n Software 
Apple Writer is a TM of Apple Computer Inc 
Apple Pie is a TM of Programma International Inc 

CIRCLE 226 ON READER SERVICE CARD 



330 N. CHARLES STREET 
BALTIMORE, MD 21201 
,(301)659-7212 



NOVEMBER 1980 



173 



Apple, cont'd. 



LABEL INST 



INDEX 



LDX 
LDA 
JSR 
I NX 
CPX 
BNE 
RTS 



OPERAND COMMENT 

**00 * index displacement 

$0900, X ; read table 

*FDED ', print character 

' next character 

#*0E J table lenath + 1 

INDEX ; bacK if not done 

t end it if it is 



0900- 

0901- 

0902- 

0903- 

0904- 

0905- 

090G- 

0907- 

0908- 

0909- 

090a- 

090b- 

090 c- 

090 d- 



Y 



U 

R 

s PC 

N 

A 

M 

E 

SPC 

Y 

E 
A 
R 



Figure 1. 
Put as many characters as needed in the table. Use the 
ASCII value as shown on pages 138 and 139 of the 
Applesoft reference manual. 



LABEL INST 



INDEX 



LDX 
LDA 
JSR 
DEX 
BPL 
RTS 



OPERAND 

#*04 
♦0900, X 
♦ FDED 

INDEX 



0900- 
0901- 
0902- 
0903- 
0904- 



4F 
4C 
4C 
45 
49 



(0) 
(L) 
(L) 
(E) 
(H) 



COMMENT 

5 char, offset 
index table 
print character 
next character 
back it not done 
end it if it is 



Figure 2. 
Short-table indexing. 



meriting, and comparing operations are 
carried out as before. The cycle is then 
repeated until the entire table is completed. 
When the compare is equal, the routine 
ends. Note that the characters all include 
the high-order bit. That is, a hex 80 is added 
to the ASCII value of the character. 
Otherwise, because of an Apple video 
characteristic, the output would be in 
reverse video. Indexing in this manner will 
allow up to 256 characters in a table. 
(Decrementing from $FF to $00 equals 256 
steps.) 

Try It This Way Too 

To index a table longer than 256 
bytes, you would need to use other 
techniques. One way would be to hold the 
index displacement constant and incre- 
ment the memory locations. An example 
will be included with indirect indexing 
later. For shorter tables — less than 128 
characters — a shorter program is 
possible. An example is shown in Figure 2. 
This version is similar to our previous 
example. Except, it's shorter and reversed. 

The displacement value starts at the 
end of the table and the last character is 
read first. Rather than increment X we 
decrement it. And, the branch to get the 



next character is taken as long as X 
remains plus. Plus (or minus) is deter- 
mined by the sign bit of the placement 
value. If the eighth bit is a zero, the value is 
plus. If the eighth is a one, the value is 
minus ($00 to $7F are plus — $80 to $FF 
are minus). When the value of X is 
decremented from $00 to $FF the sign bit 
becomes minus and the program ends. 
Because half the indexing values will be 
plus and the other half minus, this 
technique will only allow a 128 character 
table to be indexed. 

This is the simplest form of indexing. 
By incrementing or decrementing the 
index register you can sequentially "pick" 
the data from your table. The operand 
(memory location plus the value in the 
index register) points to the character in 
the table. 



Indirect Addressing 

Indirect addressing does essentially 
the same thing as absolute except one more 
step is added. With indirect addressing, the 
operand, plus the index value, points to the 
memory location that points to memory 
where the table is. Simple, right! Here's a 
diagram to illustrate the technique. 



0800- 
0802- 

0805- 



0300-00 
0301-09 



LDY #$00 

LDA ($0300) ,Y This operand 

INY 



0900+Y 



0900- 
0901- 
0902- 
0903- 
0904- 



54 (T) 

41 (A) 

42 (B) 
4C (L) 
45 (E) 



Points to this 
Memory location 



Which points to 
the table 



For simple table-reading programs, 
absolute indexing is adequate. Indirect 
indexing is more appropriate where code 
economy and speed of operation are 
important. For such applications, you 
must index from page zero. In the 
example above, the code is for pages 3, 8 
and 9 (arbitrary for purposes of illustra- 
tion). The next example shows the code to 
use for zero page indexing. 



0800- 
0802- 
0804- 



LDY 
LDA 
INY 



#*00 
<*3A) ,Y 



Note that the indexing instruction implies 
a two-address indirect location; $0300- 
$0301 and $3 A $3B. 

Another application of indirect 
addressing might be a block memory 
move. A typical example in the Apple II is 
the memory move command for the 
monitor. If you examine the code for this 
routine you will see a useful technique 
variation. Rather than increment or 
decrement an offset value, the memory 
addresses are incremented. Here's a short 
program to list a portion of memory. The 
routine at $FCBA is used by the memory 
move routine to compare byte counts. 



MOOMEM 
LDY #*00 
LDA <3C),Y 
J3R *FDDA 
LDA #$A0 
J3R ♦FDED 

JSR *FCBA 
BCC MOOMEM 
RTS 



index offset value 
set the byte indirect 
print the byte in A 
space character 
print the character 
in A 

compare byte count 
not done - so back 
done - end it 



Indexing in this example is page zero 
indirect. The index offset value is not 
changed. But, if you examine the monitor 
routine at $FCBA, you will see that the 
memory address is incremented. When the 
beginning address is equal to the ending 
address the carry flag is set. At this point 
the program is ended by the RTS. 

If you set up a jump to the label 
MOVMEM address at $03F8 then the 
(CTRL) Y monitor function can be used. 
For instance, if $0800 is the starting 
address then at $03F8 to $03FA store 4C 
00 08. To run the program enter the 
starting address a period and the ending 



174 



CREATIVE COMPUTING 




NEW 



S APPLE 




REALIZE THE POWER OF YOUR APPLE 

Enhance graphics and games with the MICROSTIK, 
control video and other hardware with the micro- 
box, using CJM's Modular Microsystem. 

Prices start at $44.95 
Call or write for more information 
* Ask us about CAI applications 
VISA & MC accepted 



CJM 



P.O. Box 2367 

Reston. VA. 22090 (703)620-2444 

7 




CIRCLE 159 ON READER SERVICE CARD 




Find Your Way Around 
The New Apple DOS 
With The Dakin5 e 
Programming Aids 3.3 




Dakin5 Corporation, a Colorado soft- 
ware house, is making available to the 
public 12 utility programs on one 16 
sector diskette, utilizing the new 
Apple DOS 3.3, which provides 2^ 
more storage. 

All of the Dakin5 Programming 
Aids 3.3 programs are also compat- 
ible with the Corvus Disk Drive 
system. 

Features 

• Remove REM statements, unref- 
erenced (dead) code, and com- 
press code to increase program 
speed and save memory ana disk 
space. 

• Copy any file or program from 
one diskette to another. Only the 
name is needed. 

• Print or display a line cross refer- 
ence and variable name cross 
reference. 

• Print or display all or selected 
records from a text file. 

• Display any sector of a given file 
or program, and then update any 
data within that sector, or specify 
the sector you wish to update, 
such as directory sectors and sec- 
tors occupied by DOS. 

Apple is a registered trademark of Apple 
Computer Inc. The Controller is a registered 
trademark of Dakin5 Corporation. 



• Create, print and modify your 
own text and Exec files. 

• Perform 20-digit arithmetic. 

• Copy a diskette without DOS; 
initialize without DOS; verify 
source diskette; verify copied 
data is the same as the original. 

• Use a powerful data entry routine 
that handles both string and nu- 
meric data. 

Plus Many More Utility Programs 
for Sophisticated Programmers 

Many of these utility programs have 
been developed and tested for in- 
house use while producing The Con- 
troller™ business package for Apple 
Computer Inc. 

Each programming aids package 
includes a program diskette and very 
complete documentation, all attrac- 
tively packaged in a padded, blue 
print vinyl 3-hole notebook with sil- 
ver lettering. An identifying tab sepa- 
rates each program for convenient 
reference. 

See your Apple dealer or contact 
Dakin5 Corporation, P.O. Box 21187, 
Denver, Colo. 80221. Telephone: 800- 
525-0463. VISA or MC welcome. 

D AKIN 5 
CORPORATION ^^^ 



CIRCLE 122 ON READER SERVICE CARD 



presents 

x\. V^. kL. 
(Applesoft Command Editor) 

A powerful coresident enhancement to Applesoft! 

Functions include: 

• Easy, fast line editing 

• Keyboard macros 

• Abbreviated commands ("L" for LIST, etc.) 

• Programming Utilities: 

single variable cross reference 

hex/decimal convert 

display value of all current non-array variables 

in use. 
Commands are executed right from the keyboard 
without creating or loading any external files. A.C.E. 
is a must for efficient program development. 

48 K Applesoft ROM required — $29.95 
(Diskette only — please specify DOS 3.2 or 3.3) 

Available from your local computer store 

or 

soutnuuGstGRn data 

P. O. Box 582-A 

Santee, CA 92071 

(714) 562-3670 

CIRCLE 184 ON READER SERVICE CARD 



GALAXY SPACE WAR I 

Galaxy Space War 1 (WARD is a game of strategy in which the player has complete 
control of his space fleet's tactical maneuvers. Each fleet battles its way toward the 
opponents galaxy in an attempt to destroy it and win the war WAR1 simulates the 
actual environment encountered in a space war between two galaxies. Optimum use 
is made of Apples high resolution graphics (HIRES) and colors in displaying the 
twinkling stars universe, the colored ships of each fleet, long range sensors colored 
illuminations, and the alternating blinking colors used in battles between ships. 
Complementing HIRES are the sounds of war produced by Apple's speaker. 

WAR1 is played between Apple and a player or between two players. You may 
play with total knowledge of each others fleet or only ships sensor knowledge of 
the opponents fleet Each player builds his starting fleet and adds to it during the 
game. This building process consists of creating the size and shape of each ship, 
positioning it. and then allocating the total amount of energy for each ship 

During a player's turn he may dynamcially allocate his ships total energy between 
his screen/detection and attack/move partitions. The percentage of the total energy 
allocated to each partition determines its characteristics The screen/detection 
partition determines how much energy is in a ship's screens and the detection sector 
range of its short range sensors. The attack/move determines the amount of energy 
the ship can attack with, its attack sector range, and the number of sectors it can 
move in normal or hyperspace. 

When an enemy ship is detected by short range sensors, it is displayed on the 
universe and a text enemy report appears The report identifies the ship, its position, 
amount of energy in its screens, probable attack and total energy, a calculated de- 
tection/attack/move range, and size of the ship. Also shown is the number of days 
since you last knew these parameters about the ship. When a ship's long range sensor 
probes indicate the existence of an enemy presence at a sector in space, this sector 
is illuminated on the universe. 

An enemy ship is attacked and destroyed with attack energy. If your attack energy 
breaks through his screens, then his attack energy is reduced by two units of energy 
for every unit you attack with. A text battle report is output after each attack. The 
program maintains your ship's data and the latest known data about each enemy 
ship. You may show either data in text reports or display the last known enemy posi- 
tions on the universe. You can also get battle predictions between opposing ships. 
The text output calculates the amount of energy required to destroy each ship for 
different energy allocations. 



APPLE® II, 48K, APPLESOFT • GALAXY 

ROM CARD, DISK II DOS 3.2 3E DEPJ- CC4 

WAR1 DISK & MANUAL ...$39.95 P 0. 1 BOX 22072 

(CA residents add 6% sales tax) SAN DIEGO, CA 92122 
Write or call for more information (714) 452-1072 



NOVEMBER 1980 



175 



r 



Apple, cont'd. 



address; like this — 

MEMSTART.MEMEND. 
Now press CTRL and Y. When you do the 
control Y, the monitor will jump to the 
program address stored at location #03F8 
and the memory contents from MEM- 
START TO MEMEND will be printed on 
the screen. Again, if you read through the 
program at SFCBA in the listing of the 
monitor, you will find that the indirect 
memory location at $3C - $3B is incre- 
mented. The table being indexed is the 
range of memory you specify bv MEM- 
START.MEMEND. (Note: 'indexing 
Principals is rewritten from articles I wrote 
originally published in the Southeastern 
Software Newsletter.) 

Nibble 

Here's an Apple 11 information source 
that has something for most every Apple 1 1 
owner. Nibble is devoted entirely to the 
Apple II. I get several other Apple-only 
publications. Usually, they are specialized 
or include only utility type routines. Nibble 
has a nicely balanced mixture of recrea- 
tional diversions, personal and business 
applications, and useful hardware articles. 



REMOTE SWITCHES 



Magazines such as Creative Computing 
will provide you with a wide-ranging 
perspective of computer knowledge and 
applications. You will need this broad 
scope of computer knowledge to help you 
develop insight and creativity. Informa- 
tion sources like Nibble help you apply 
your creativity, and provide you with a lot 
of low cost software. A subscription of 8 
issues for $15.00 is available from Nibble, 
Box 325, Lincoln, MA 01773. 

Head Cleaners 

3M has developed a product to clean 
disk drive heads. Included in the kit are 
two special "diskettes" and a bottle of 
cleaning fluid. The kit allows you to clean 
the heads without opening the case. High- 
use systems should use the kit about once a 
month. Most of us only need to use it every 
6 months or so (or if "funny" things happen 
to stored programs). Note that some 
diskettes cause more head contamination 
than others; especially the bargain types. 
In this case, you must use the kit more 
frequently. Order model 7440, the 5 inch 
size, for your Apple drives. You can get the 
kit from most 3M distributors or from 
Data Recording Products Division/ 3M, 
St. Paul, MN 55101. The cost is $30.00. 

Figure 3. Interrupt Control Circuit. 
5x1/6 7404 



We Now Interrupt . . . 

There are two types of interrupt 
capability in the Apple II. One is called a 
Non Maskable Interrupt (NMI) and the 
other is a Maskable Interrupt (IRQ). The 
interrupts are connected to the 6502 micro- 
processor in the Apple II. (NMI and IRQ 
are abbreviations for the name of the 
interrupt and not assembly language 
mnemonics.) Both will allow you to 
monitor some remote function while 
running a program. The NMI will halt the 
program regardless of any other condition. 
The IRQ (Interrupt request) will not halt 
the program unless you clear the interrupt 
flag allowing the interrupt to occur. 
Setting the interrupt flag will prevent an 
IRQ from taking control. From this 
discussion you can see that NMI is the 
highest priority interrupt. 

Interrupt Access 

Both of the interrupts are available 
from the expansion connectors; pins 29 
and 30 for NMI and IRQ respectively. 
Usual access is made through the edge 
connector of a circuit board made to plug 
into the expansion connector. One such 
board is the Apple prototyping board. This 
is an expensive way to connect to just two 



5 x 1/6 7406 




5 x I0K OHM PULL UPS 



REMOTE SWITCHES CAN BE MAGNETIC 

TYPES OR PRESSURE OPERATED. 

NMI AND IRQ PINS ARE IN THE 50 PIN 

EXPANSION CONNECTORS. THE OTHER PINS 

ARE IN THE GAME PADDLE I/O CONNECTOR 



n^Fn mp^!' tS ji*f UST ' NG ' T ° SENSE ™ E ,RQ ,NPUTS A S,MI1 AR PROGRAM AT A DIFFERENT MEMORY I OCA HON CAN BE 
USED FOR NMI. THE MULTIPLE INTERRUPT INPUT COULD ALSO BE USED FOR NMI IUST CONNECT THE 4-SWITC H CI R CI J T TO PIN "y 

Is USED ° F P,N * THE PROGRAM ,N l ,ST,NG ' WOLJ: D BF THE ™ THE S5 CIRCUIT CAN B? LEFT OFF IF ON^ 



176 



CREATIVE COMPUTING 



. . . the new wealth is 
information, newsweek 



a Wealth 
of Books . . . 



Omputer by Rodnay Zaks 



A new edition of one of the most popular 

computing and microcomputers. Includes a detailed guide for selecting basic hardware. 

"An excellent book for anyone new to computing."— On Computing. 

$7.95, 280 pp., 150 Illustr., 2nd Ed. 

CP/M— The industry standard in operating systems. The handbook goes step-by-step 
from basic commands through the editor and assembler to CDOS and multi-user MP/M. 
For everyone from input typists to applications programmers. $13.95, 304 PP ., 110 niustr. 

Written as a progressive course designed to test the reader at every step, this book 
covers the essentials of programming the 6502 from basic concepts to advanced data 
structures. "Thoroughly recommended."— PET Gazette. $12.95, 392 PP ., 200 niustr., 3rd Ed. 

This second book in the 6502 series presents real life applications techniques for any 
6502 based microcomputer board. Programs range from home alarm systems to 
industrial applications including analog-digital conversion. The I/O book for the 6502. 

$12.95, 288 pp., 200 illustr. 

Third in the 6502 Series, this educational text shows how to program the complex 
algorithms for ten computer games, and how to use the 6502 addressing modes. All 
programs have been thoroughly tested. $12.95, 250 pp., 150 niustr 




From the ground up: the components (ROM, RAM, MPU, UAR 

comparative evaluation. Plus system interconnect, applications, interfacing, program- 
ming system development and more. "Essential reading." — Personal Computer World. 



mum H D CT 



programming 



$10.95, 420 pp., 200 illustr., 3rd Ed. 



V< 






application 

DOOK 




I 



BOOMAYXAKS 




esso 



How to connect a microprocessor to the outside world. Covers the peripherals, from key- 
board to CRT and floppy disk, I/O techniques, A/D conversion, standard buses and 
troubleshooting. "Clear and eminently readable."- -Interface Age. 

$15.95, 464 pp., 320 illustr., 3rd Ed. 



-80 by Rodnay Zaks 



Readable and informative, this book is both an introductory course on Programming 
and a self-contained reference text offering a comprehensive description of the Z80 
instruction set and a thorough account of its internal operations. 

$14.95, 620 pp., 200 illustr., 2nd Ed. 



A comprehensive introduction to assembly level programming in the language of the 
Z8000 The detailed description of the Z8000 architecture and its family of support 
chips is indispensable for engineers, students and PDP-11 users. $15.95. 320 PP ., 133 iiiusi 



PLEASE SEND ME THESE BOOKS: 
YOUR FIRST COMPUTER $7.95 

□ THE CP/M HANDBOOK WITH MP/M $13.95 

□ PROGRAMMING THE 6502 $12.95 

MAIL TO: 



:*:> 



DEPT.CC11 

2344 SIXTH STREET, 

BERKELEY, CA 94710 

PHONE ORDERS: 415/848-8233 

NOVEMBER 1980 



□ 6502 APPLICATIONS $12.95 

□ 6502 GAMES $12 .95 

n MICROPROCESSORS FROM CHIPS TO 
SYSTEMS $10.95 



□ MICROPROCESSOR INTERFACING 
TECHNIQUES $15 95 

□ PROGRAMMING THE Z80 $14.95 

□ PROGRAMMING THE Z8000 $15.95 



NAME. 



ADDRESS 
CITY 



STATE- 



ZIP 



PLUS □ $1.50/book UPS or 
TOTAL AMT ENCLOSED — 
CARD # 



Q 75£/book 4th class mail (CA add tax) 

OR CHARGE MY Q VISA Q MC Q AM. EX. 

EXP DATE 



SIGNATURE 

□ PLEASE SEND ME YOUR FREE CATALOG 

177 



CIRCLE 238 ON READER SERVICE CARD 



For your Apple II, 

MUSIC 




ALF Music Synthesizer 

The ALF music synthesizer has three voices on each 
board which are easily programmed using the Entry 
program provided. The envelope shape of each voice 
(or even each note) may be controlled individually thus 
allowing the synthesis of practically any instrument 
such as a violin, trumpet, piano, harp or bells. 
Instrumentation and dynamics may be varied while a 
song is playing by changing the attack, sustain, release, 
decay, gap and volume of the notes. 

Playback of music is accompanied by a spectacular 
color display showing a stylized "piano keyboard" for 
each part with the colors of the notes varying in 
proportion to their loudness and waveform. 

Ease of Music Entry 

Music is entered directly using the high-resolution 
graphics entry program. One paddle is used to select 
menu items such as note duration, accidentals, dotted 
notes, triplets, tied notes, etc. while the other paddle 
moves a note cursor up and down the staff over a 
4-octave range. The transpose command extends the 
range to eight octaves. This form of music entry is 
considerably faster and more accurate than cryptic note 
code schemes (like QFS3) found with other synthe- 
sizers. 




gggSURE * 
SftUI 



INS D£L TIC 



£ 



SUB 



9474 FREE 



MUSIC ENTRY SCREEN 

The board plugs into any Apple II or Apple II Plus. 
Two or three boards are required for stereo. Requires a 
16K Apple system and external amplifier and speakers. 

*ALF Apple Music II (AM-II) Synthesizer 

The AM-II is a new, low cost digital music 
synthesizer for the Apple II computer. It features 9 
voices on a single music card. 

The software ENTRY and PLAY systems are the same 
as on the ALF Apple Music Synthesizer (AMS). The two 
principle differences between the new AM-II and the 
original Apple Music Synthesizer are in pitch range, 
volume range, and parts per board. 

The new AM-II has a range of six octaves. The 
dynamic range is 28 db. (The original AMS has a range 
of 8 octaves a dynamic range of 78 db and 3 parts per 
board.) 



GRAPHICS 

VersaWriter 

VersaWriter is a drawing tablet for the creation of 
full-color, high resolution graphic images on the Apple. 
Images may be drawn freehand or traced from existing 
images (cartoons, photos, drawings, etc.) using the 
simple pivoted two-arm pantograph with magnifying 
crosshairs. 

After an image is drawn, it may be rotated, shrunk, 
or enlarged. It may be moved across the screen and 
alternated with other images thus providing high-resolu- 
tion animation. The image may be colored with varied 
colors. 




Animate other Programs 

Graphical images made with VersaWriter and stored 
on tape or disk may be called from other programs or 
even imbedded in them. With VersaWriter, you don't 
have to worry about assembly code, counting pixels or 
other cumbersome hi-res graphics entry and retrieval 
techniques. 

VersaWriter graphics can be used in all types of 
programs— games, statistics, engineering, artistic, and 
educational. Your only limit is your own imagination. 

Two Disks of Software 

Disk 1 contains the basic plotting, scaling, 
movement, rotation, color, transfer and recall software. 
This disk also includes routines which create "shape 
tables" from your figures to be used in other programs. 
Disk 2 contains applications software. One program 
adds five sizes of upper and lower case text to drawings, 
another adds standard electronic and digital symbols, 
while a third calculates distances and areas. 

VersaWriter requires a 32 or 48K disk system, 
Applesoft in ROM or an Apple II Plus. 



VersaWriter $252.00 

ALF Music Synthesizer $268.00 
AM-II Synthesizer $198.00 

Prices postpaid in USA. NJ residents add 5% sales tax. 

To order VersaWriter or the ALF Synthesizer, send 
your name and address along with a check or 
chargecard number and expiration date. Visa, Master- 
Card and American Express are welcome. Units are in 
stock and orders will be shipped as soon as your check 
clears or your credit is verified. 



Peripheral s PIik 

119 Maple Ave., Morristown, NJ 07960 (201)538-3385 



Dealer inquiries invited. 



CIRCLE 252 ON READER SERVICE CARD 



Apple, cont'd. 



pins. One idea would be to find a scrap 
circuit board with the proper edge 
connector. Cut the connector off and 
solder wires to the two interrupt pins. 
Connect these wires to a 16 pin component 
header plugged into the game paddle I/O 
socket. Use the two pins which are not 
connected to other circuits (9 and 16). 
Some of the other pins will be used for 
other interrupt monitoring connections. 

Another possibility would be to 
remove the main circuit board and jumper 
the interrupt lines to the unused GP I/O 
socket pins. If you or someone you know 
has experience making jumpers on circuit 
boards, this is the best way. You could 
mess up the board so don't try it unless you 
know what you're doing. Doing this will 
void warranties, too. The connections to 
the GP I/O of the NMI and IRQ signal 
lines make it possible to make other simple 
connections for monitoring more than two 
devices. We'll get to that shortly. 

Signal Levels 

Both the interrupt lines have pull-up 
resistors. This means that an active low 
signal is required to cause an interrupt to 
occur. The NMI is edge sensitive. When an 
input of the proper direction occurs, the 
interrupt occurs. The duration of the input 
signal is not important. Only the leading 
edge of the signal is sensed. However, no 
other input to NMI can occur until the 
current interrupting signal returns from 
low to high. The IRQ on the other hand is 
level sensitive. A signal change to active 
low for some period of time is required to 
make the interrupt occur. The minimum 
amount of time is the length of the longest 
instruction cycle. This is because the 
interrupt does not happen until the current 
cycle is completed. Again, the signal must 
go away before any other maskable 
interrupts can occur. A useful reference on 
the discussion of 6502 interrupts can be 
found in Micro magazine for July 1980, 
page 47. 

£j& tatecYuvt Ptofctam 

Listing 1 is an assembly language 
program for polling a series of switches 
used in the circuit of Figure 3. This circuit 
allows monitoring of the non maskable 
interrupt as the priority input. It also 
provides for polling of 4 inputs to the 
maskable interrupt. Since we are using the 
three switch input bits in the GP I/O 
connector, we can have 4 input circuits, the 
assumption being that we can test three 
inputs directly and default to the fourth. 
The flow chart in Figure 4 illustrates the 
assumption. Before we continue with a 
discussion of the interrupt program, a 
short digression is needed to establish the 
maskable interrupt initialization (if you 
are to include this capability in a Basic 
I program). 



5AV6 A X 4 V 
R£6iSrEK5 

P©U- Su^itchCS To 
Fiwo OWE THAT PIP «T 

IF rr**i £*>to 
Di^LAV Routine. 

rpwor TBsrsuji. 

tf IT5* 2. Zero 
Oi^LAV ZooTk KJE. 
Zf HOT TEST Su>>. 

IF ITS * % 6«To 
Df^fLAY* ROUTINE 
IP WOT Ol*PL*V** 

EF ITS *J*T A TEST- 
A*lF SuitTCH Assume 
IT* * A TiofvJr 

L>5E K£Y*0*«DT€*T 
Tto GoMTiwi/E o* WaiX 

IF NOT" PKE5S6P 
Comtimue TesTtMt 



IP KEY \*> PfcESSEO 

f?esToee Y,x T *flM*- 
RE5TO*€ pc t s Ke&s. 

^ETUfcK) To MAJU P*M. 



ClRQ /NMI ) 

zxz 



5AvE 
REfrlSTEaS 



I 



CHECK 
SWITCHES 




ON- 



DISPLAY « 



I 



K&VOoA&P 

CHECK 




( * T * ) 



Initializing Interrupts 

The Apple monitor is the first place 
where interrupts are processed. A jump 
indirect through the address stored at 
locations $03FE and $03FF occurs as the 
result of an IRQ input. The address of the 
interrupt handling routine would be stored 
at these addresses. Addresses $03FB to 
$03FD are used to contain a jump to the 
address of the program used to handle non 
maskable interrupts. The addresses can be 
the same or different depending on your 
needs for interrupt handling. Our example 
program in Listing 1 is for IRQ input. The 
handling requirements are similar so the 
program will serve as an illustration for 
IRQ and NMI application. 

In addition to initializing the vector 
addresses to the handling programs, the 
IRQ flag must be set. The mnemonic 
instructions used to do this are CLI (58 



Pl^fUAY 1 




PlSfLAYZ 



P15A-AV? 



zr 



Figure 4. 

Flowchart for testing 4 sources of interrupt. Polling can 
be for maskable or non maskable interrupts. 



hex, 88 dec) to allow the IRQ to interrupt 
the program, and SEI (78 hex, 120 dec) to 
prevent interrupts from the IRQ input. As 
you might guess, the mnemonics stand for 
clear interrupt and set interrupt. In a Basic 
program the initialization can be handled 
by a series of POKEs to memory. To poke 
the interrupt routine address use 

xxxx POKE 1022,00 

xxxx POKE 1023,03 
to put the IRQ routine at address $0300. 
And, use 

xxxx POKE 1019,76 

xxxx POKE 1020,00 

xxxx POKE 1021,03 
to put the NMI routine at address $0300. 
Note that 76 is the decimal value of the op 
code $4C (mnemonic J MP). Additionally, 
provide a way to set or clear the interrupt 
flag as desired when you start the program. 
You can use pokes to do this too. 



NOVEMBER 1980 



179 



Apple, cont'd. . . 

Following an input line asking the 
program user which choice, use 

xxxx POKE 10,88:POKE 11,60 

xxxx CALL 10:RETURN 
to allow interrupts and, 

xxxx POKE 10,120:POKE 11,60 

xxxxCALL I0:RETURN 
to prevent interrupts. Again, use these as 
part of your initialization program. 
Addresses 10 and 1 1 ($A and $B)are used 
for the USR function. If your program 
includes the USR function find another 
pair of addresses to use. 

The Program 

Listing 1 is an assembly language 
program to poll several inputs to the single 
IRQ line. This program checks each of the 
three switch inputs. If one of them is not 
on, the assumption is made that it is the 
fourth. Whichever input causes the 
interrupt will be displayed on the screen. 
Should any other switch close, that input 
will be displayed too. All inputs must 
return to the normal open state before the 
cycle can be started over. Since this 
program and circuit are intended only for 
demonstration, no attempt was made to 
provide automatic reset. The program is 



somewhat self explanatory. Only a brief 
comment is required to clarify the function 
of each section. 

The first section equates actual 
memory locations to symbolic names. This 
allows you to use the name in place of the 
memory location. The assembler will keep 
track of the locations at assembly time. 
Each of the switch input addresses, the 
keyboard, and monitor routines to be used 
are equated to labels. The program is then 
assigned the originating address of $0300. 
This address could be any place you have 
space for the interrupt handling routines. 

Registers not saved by the IRQ (or 
NMI) are saved in this sequence. The 
status register and the program counter are 
saved as a result of the interrupt. To insure 
that other registers will be saved, they are 
pushed on the stack by this sequence. Once 
the routine is completed, the opposite 
sequence is performed to restore the 
registers. This is accomplished by the 
RESTOR sequence. Having saved and 
restored all the registers, you can return 
back to the interrupted program exactly 
where you left off. 

Next, each switch is tested. If any 
switch is on, the program branches to a 
routine to display this fact on the screen. 
Three switches are tested and a default is 



LIS 1000,1500 



Listing I A. 



made to the fourth interrupting device 
The assumption is made that this routine is 
running because an interrupt occurred. 
Therefore, if it's not one of the testable 
switches, it must be the one left. 

Having tested and displayed the 
switch indicating the interrupt source, the 
program returns and repeats the test of the 
inputs. But, not before the keyboard input 
is tested for a pressed key. If no key has 
been pressed, the routine continues. 
Should any other input switches close, they 
will be displayed too. Response to the 
reason for the interrupt can be made at this 
time. If a key is pressed, the program 
passes to the register restore section. The 
key-testing routine permits you to allow 
the interrupt condition to continue until 
you have made whatever action is 
necessary. 

Following the restoring section is the 
common routine for displaying the 
response. Depending on the activated 
circuit, a register is loaded with the switch 
number. This number is then used by the 
following routine to display a message and 
indicate the switch number. The alarm 
message uses the absolute indexing 
method mentioned at the beginning of this 
column. The message is contained in an 
ASCII string at the end of the program. 

□ 



1000 

1010 

1020 

1030 

1040 

1050 

1060 

1070 

1080 

1090 

1100 

1110 

1120 

1130 

1140 

1150 

1160 

1170 

1180 

1190 

1200 

1210 

1220 

1230 

1240 

1250 

1260 

1270 

1280 

1290 

1300 

1310 

1320 

1330 

1340 

1350 

1360 

1370 

1380 

1390 

1400 

1410 

1420 

1430 

1440 

1450 



***************************** 
* INTERRUPT POLLING ROUTINE « 
» BY! CHUCK CARPENTER 7/80 * 



* USES THE SYNTAX OF 

* S-C ASSEMBLER II 



THE 



♦ SYMBOLIC ADDRESS ASSIGNMENTS 

SW1 .EG $C061 SWITCH-IN PIN2 GP I/O 

SW2 .EG *C062 SWITCH-IN PIN3 

SW3 .EG *C063 SWITCH-IN PIN4 

KEY .EG ♦COOO KEYBOARD DATA 

STROBE .EG ♦ COlO CLEAR KEYBOARD STROBE 

CHROUT .EG ♦FDED MONITOR CHARACTER OUT 

.OR $0300 PAGE 3 ORIGIN 

♦ SAVE THE REGISTERS 



SAVE 



PHA 
TXA 
PHA 
TYA 
PHA 



SAVE ACCUMULATOR ON STACK 
PUT X IN A 
SAVE X ON STACK 
PUT Y IN A 
SAVE Y ON STACK 



* CHECK THE SWITCHES AND DISPLAY 

* THE ONES THAT ARE ON 

CHK1 LDA SW1 CHECK SWITCH 1 

BPL CHK2 NOT 0N-G0T0 SW2 

JSR DISP1 0N-G0T0 DISPLAY 1 

CHK2 LDA SW2 CHECK SWITCH 2 

BPL CHK3 NOT 0N-G0T0 SW3 

JSR DISP2 0N-G0T0 DISPLAY 2 

CHK3 LDA SW3 CHECK SWITCH 3 

BPL CHK4 NOT ON - MUST BE 4 

JSR DISP3 0N-G0T0 DISPLAY 3 

CHK4 JSR DISP4 DISPLAY BY DEFAULT 

* PRESS A KEY TO ESCAPE 

* FROM POLLING ROUTINE 



KYBD LDA KEY CHECK FOR PRESSED KEY 

BPL CHK1 NOT PRESSED-BACK TO SW TEST 



1460 




STA 


STROBE 


PRESSED-CLEAR STROBE 


1470 










1480 « 


RESTORE 


THE REGISTERS THEN 


1490 * 


BACK TO 


MAIN PROGRAM 


1500 

• 
■ 
















Listing 


IB. 


LIS 1510,1870 






1510 RESTOR 


PLA 




GET Y BACK TO A 


1520 




TAY 




PUT A IN Y 


1530 




PLA 




GET X BACK TO A 


1540 




TAX 




PUT A IN X 


1550 




PLA 




GET A BVACK 


1560 




RTI 




GOTO MAIN PROGRAM 


1570 










1580 * 


PUT 


THE 


SWITCH 


NUMBER INTO 


1590 * 


TEMPORARY 


1600 










1610 DISP1 


LDA 


#*31 


SWITCH 1 ON 


1620 




STA 


♦FA 


STORE IN IN SCRATCH LCTN 


1630 




JMP 


CRT 


JUMP TO DISPLAY RTNE 


1640 DISP2 


LDA 


#432 


SWITCH 2 ON 


1650 




STA 


♦FA 


STORE IT 


1660 




JMP 


CRT 


JUMP TO DISPLAY 


1670 DISP3 


LDA 


#♦33 


SWITCH 3 ON 


1680 




STA 


♦FA 


STORE IT 


1690 




JMP 


CRT 


JUMP TO DISPLAY 


1700 DISP4 


LDA 


#♦34 


SWITCH 4 ON 


1710 




STA 


♦FA 


STORE IT 


1720 










1730 * 


PRIN 


MESSAGE 


1740 










1750 CRT 




LDY 


#*OF 


LOAD INDEX DISPLACEMENT 


1760 CRT1 


LDA 


TABLE rY 


PRINT THE MESSAGE 


1770 




ORA 


#♦80 


SET HI BIT - NORMAL VIDEO 


1780 




JSR 


CHROUT 


PRINT THE CHARACTER IN A 


1790 




DEY 




NEXT CHARACTER 


1800 




BPL 


CRT1 


BACK FOR MORE TABLE 


1810 




LDA 


♦FA 


LOAD THE ON-SWITCH # 


1820 




JSR 


CHROUT 


PRINT IT 


1830 




LDA 


#♦80 


LOAD A CARRIAGE RETURN 


1840 




JSR 


CHROUT 


PRINT IT 


1850 




RTS 




BACK TO INTERRUPT ROUTINE 


1860 TABLE 


.AS 


■ HCTIWS 


1870 




.EN 







180 



CREATIVE COMPUTING 



FASTER THAN A SPEEDING TYPIST 

Is it safe to walk the keyboard of your TRS-80 at night? Do you look for Syntax Errors down every dark subroutine? 
Well, look in your mailbox-Its a bill, it's an ad, it's CLOAD MAN! Faster than keying in hardcopy, more fun than 
an accounts-receivable package, ready to run in a single load . 

When mild mannered Clyde Cload (star 
cassette tape duplicator at the MONTHLY 
CLOAD) dons his cape, the evil Typo-Bugs 
cringe in terror. This mighty Man of Iron Oxide 
swoops down on your TRS-80 by First Class Mail 
every month with super, ready-to-load programs 
for your (and your computer's) education and 
enjoyment. 

Join in the battle against the Finger-Cramps, 
Edit Modes, and Typo-Bugs. Let CLOAD MAN 
come to your computer's aid by getting a 
subscription to CLOAD MAGAZINE. 

PRICES 

1 year subscription $42.00 

6 month subscription $23.00 

Single copies 54.50 

Anthology-volume 1 $1 0.00 

Anthology-volume 2 $1 5.00 

The Fine Print: 

Overseas rates slightly higher— please write for them. 
Back issues available— ask for our list.* 
TRS-80 is a trademark of Tandy Corporation. 
California residents add 6% to single copies and anthologies. 
Programs are for Level II 16K and occasionally for 48K disks. 
*24 Level I back issues also available. 

N\astercharge/V\sa Welcome Also Cash & Gold, 
c Copyright CLOAD MAGAZINE 1980 



CIRCLE 1130N READER SERVICE CARD 




MAGAZINE inc. 

P.O. Box 1267 • Goleta, CA 93017 

(805) 964-2761 





SIMULATED COMPUTER 



An aid for students learning computer 
programming. Your TRS-80 or Apple 
II becomes a simulated machine Ian 
guage computer, displaying on the 
screen the contents of the internal 
registers and all 20 memory locations. 
You can input programs, run them, 
single-step them — and see the results 
of every single machine cycle on the 
screen. Manual and teaching guide in- 
cluded. TAPE $10.95, DISKETTE 
$15.95. 

Many other programs available. 



Send for a free catalogue! 



STEKETEE 

EDUCATIONAL 

SOFTWARE 

4639 Spruce Street 
Philadelphia, PA 19139 



3r 



Software and Hardware for 
Business Education-Entertainment 

Recent Arrivals: 

A snuM trmc the definitive Hi-Res color version of the classic 
Startrek game. Three different Klingon opponents. Many command 
perogatlves from use of weapons to repair of damages Need 48K 

Applesoft ROM Disk $24.»5 

Add $2.00 U.S. /S5.00 Foreign shipping charges. 

versa writer N A drawing tablet, simply plugs into your game I/O 
port Trace, draw, design, or color any type of graphic Adds words to 
pictures Creates schematics computes Distance/ Area of any figure 

Needs 32K Applesoft ROM and disk drive A bargain at.. $249.95 

Add $5.00 U.S./ $10.00 Foreign shipping charges. 

California residents add 6%. Don't see what you want here, THEN write 
or call today for your FREE software and hardware catalog. 



Open Tuesday ■ Sunday 




Vlsa/Mastercharge welcome 



Garden Plaza Shopping center 

9719 Reseda Blvd., Northridge, Calif 91324 Dept 

Telephone: (213) 349-5560 



7CC 




J 




We have discounts, 

factory warranties, 

FREE shipping & insurance 

and a 

Toll Free Order Number 

available. 

CALL US! 

Pan American 
Electronics 



® 



Incorporated 

3 Radio /haek 

AUTHORIZED SALES CENTER 

1117 Conway. Mission, Texas 78572 

TOLL FREE ORDER NUMBER 

800 531 7466 

Texas & Principal No 

512 581 2765 




VKJC 



CIRCLE 229 ON READER SERVICE CARD 



181 



CIRCLE 186 ON READER SERVICE CARD 



Tlfc-SO 

Strings 



Stephen B. Gray 



V 



For this two-dozenth column, we look 
at Radio Shack's three new TRS-80 
computers, eight game cassettes from 
Programma International, and a sub- 
routine that adds fireworks to any 
program. 

Now We Are Five 

If you're interested in buying a Radio 
Shack computer, you now have five 
TRS-80 models to choose from, because 
three new ones were introduced on July 3 1 : 
• TRS-80 Model III, almost a Model I 
with room for dual integral 514-inch disk 
drives, starting at $699, which places it 
between the Models I and II. 

• TRS-80 Color Computer, begin- 
ning at $399, and using plug-in ROM 
"Program Paks" or cassette or disk for 
input, along with joysticks. 

• TRS-80 Pocket Computer, 7 inches 
long, weighing 6 ounces, fits in your hand 
or pocket, $249. The size of an electronic 
translator, it connects via a $40 interface to 
a 7'/ 2 -inch-long $79.95 cassette recorder 
and most other compatible recorders. 

TRS-80 Model III 

The Model III combines the integral- 
disk-drive features of the Model 1 1 with the 
low-end price of the Model I. It can be 
programmed either in Level I Basic, which 
is Palo Alto Tiny Basic, or in Model III 
Basic, which is Radio Shack's revision of 
Microsoft Basic, with some of the features 
that were removed to make the Model I 
Level IFs Basic fit into I2K of ROM. 

Model III is housed in a single 
cabinet, with a keyboard, numeric keypad, 
12-inch video monitor, and space for two 
built-in double-density disk drives. The 
basic Model III comes without drives; 
what looks like drives in the photo are 
plastic covers molded to look like the front 
end of disk drives, but labelled 

REPLACE WITH 
RADIO SHACK DISK DRIVE 




The disk drives are the first products 
of the joint venture between Tandy Corp. 
and Datapoint, called Texas Peripherals. 

Three versions of the Model III will be 
manufactured: Level I Basic system with 
4K RAM, $699; Model III Basic system 
with 16K RAM, $999; Desktop Business 
Computer with 32K RAM, two 40-track 
disk drives with 3 1 3K of user storage, and a 
built-in RS-232 serial interface, $2,495. 

Model III has the same display of 16 
lines of up to 64 characters each as the 
Model I, and is also a Z80A machine. In 
the models at and above $999, you get 
upper and lower case. 

The Desktop Business Computer can 
be expanded to 48K RAM and two 
additional disk drives. It will read Model I 
disks. Model III Basic is compatible with 
most Model I programs. Radio Shack has 
prepared many programs for Model III, 
including Scripsit. 

Model III has a totally new circuit 



board and a redesigned architecture. There 
is some memory-mapping, but it uses 
input/ output through ports instead of 
memory addresses. 

The daisywheel printer used in the 
$4,500 Model III word -processing con- 
figuration is a Japanese-built 43-cps Ricoh 
RP 1600, priced separately at $1,960, 
about $1,000 less than comparable 
daisywheel printers by Qume, Diablo and 
NEC. 

Also announced were a bidirectional 
Line Printer VI that prints upper and lower 
case characters in four type sizes, plus 
graphics characters and special symbols, 
operating at 100 cps and priced at $1,200; 
and a $1,500 plotter/ printer program- 
mable in Basic. 

Model III should provide a great deal 
of competition for the Apple III. Although 
it displays fewer rows and columns on the 
CRT, and has less graphics capability, it is 
lower in price and is more compact. 




182 



CREATIVE COMPUTING 



MODEL II 




AUTHORIZED 

TRS-80® 



MODEL I 



A301 



26-4002 

64K 1 Drive 

$3499.00 

MODEL III 



---■«.—.„ 




C .uU^W'.UVWWWMtoHArt' - 



26-1061 4K I $630.00 

26-1062 16K III 900.00 

26-1063 32K III 

2-Drives, RS232 2246.00 



COMPUTER SPECIALISTS 

26-1056 16K Level II System with Keypad. $670.00 

26-1145 RS-232 Board 84.00 

26-1140 "O" K Interface 249.00 

261 141 "16" K Interface 365.00 

261 142 "32" K Interface 476.00 

261 160 Mini Disk - Drive O 424.00 

26-1161 Mini Disk - Additional 424.00 

26-1154 Lineprinter II 720.00 

26-1156 Lineprinter III 1799.00 

26-1180 Voice Synthesiser 339.00 

26-1181 VOXBOX 145.00 

26-1104 Factory Upper/Lower 

Case Modifcation Installed 70.00 

26-1506 Scripsit - Tape 60.00 

26-1563 Scripsit - Disk 85.00 

NOTE: Call for availability of VIDEO TEX, Model III, Color, 
and other new products. 




26-1054 

4K Level II 

$552.00 

COLOR 



^tfnMMtaMMVBMNMfl 



muw w wwt»-B?tt , a^»» , > 















CERTROniCS 

Fast 100 CPS Centronics 

730 Printer $675.00 

Text Quality Centronics 

737 Printer $850.00 



ALL OTHER R.S. SOFTWARE 

FURNITURE, STANDS, CABLES 

AND ACCESSORIES DEDUCT 

10% FROM CATALOG PRICE 



Novation Cat Modem. $149.00 
CCA Data Management 

System 72.00 

Adventure Games 

Games 1-9 each 14.00 

Pocket Computer 



26-3001 4K $360.00 

26-3002 16K 540.00 

26-3010 Color Video 360.00 

26-1206 Recorder 54.00 

26-3008 Joysticks 22.50 



□ 



Acorn 

Software 
Products, Inc. 





1 mm 

r» cm a a 



;Oj£DCDC£Ji 



U3G3GU L~3 
23 G2 GP G3 CD CD £5J CSI CH3 ~ 



aaoaa 
annuo 






26-3501 1.9K PC $225.00 

26-3503 Cassette l/F 45.00 

14-812 Recorder 72.00 



GAMES: 

Alien Invasion $9.00 

Stock Market 9.00 

Star Trek 9.00 

Block Em 9.00 

Ting-Tong 9.00 

UTILITIES: 

System Savers 14.00 

EDUCATION: 

Language Teacher 18.00 



FREE: PRICE LIST 
UPON REQUEST 



1-800-841-0860 Toll Free Order Entry 

MJCRa MANAGEMENT SYSTEMS, JNC 



No Taxes on Out Of DOWNTOWN PLAZA SHOPPING CENTER 
State Shipments 



Immediate Shipment 
From Stock on Most Items 



115CSECONDAVE.S.W. 

CAIRO, GEORGIA31728 

(912) 377-7120 Ga. Phone No. 

"TRS-80 is a registered trademark of the Tandy Corp. 



Full Factory Warranty 
on All Items Sold. 



Largest Inventory 
In the S.E. U.S.A. 

CIRCLE 163 ON READER SERVICE CARD 



NOVEMBER 1980 



183 




TRS-80 Color Computer 

The Color Computer is Radio Shack's 
first TRS-80 to use a processor other than 
the Z80A, and is the first TRS-80 to use 
plug-in ROM software cartridges. 

At $399, the Color Computer replaces 
the Model I at the low end of the TRS-80 
line. You hook it up to your color TV set 
via an RF modulator, or buy Radio 
Shack's new $399 color TV set. A 16K 
Extended Basic Color Computer is $599. 

The first ROM Program Paks will 
cost from $29.95 to $39.95, and will be 
initially available for education, entertain- 
ment and home applications. 

The Color Basic is a version of 
Level II Basic without double precision. 

The Color Computer uses Microsoft 
6800 Basic converted to 6809 Basic; the 
processor is a Motorola 6809E. Rumor has 
it that the Color Computer was originally 
designed to use the Z80A, but then 
Motorola came up with the 6809, a new 
video-display generator chip, and "a 
considerable amount of design assistance," 
according to one source. 

The Color Computer actually con- 
tains two processors, one for arithmetic 
and the other for Basic interpreter and 
key-in. 

The Color Computer provides eight 
colors, and five different resolutions, from 
32x64 to 296x256. Some of the three 
intermediate resolutions require I6K and 
Extended Basic. 



As I understand it, there are no special 
graphics characters such as the graphics 
block and the 63 graphics characters 
provided by the TRS-80 Model I, Level II. 

TRS-80 Pocket Computer 

The Pocket Computer features a 24- 
character LCD display with English- 
language prompting and Basic program- 
ming. It includes 1.9K bytes of RAM that 
hold the information for the 300-hour life 
of the internal batteries. It's supposed to be 
able to perform "almost any of the smaller 
jobs the TRS-80 Model I can do. 

Pre-programmed cassette tapes for 
the Pocket Computer include real estate 



($24.95), civil engineering ($24.95), 
personal finances ($19.95), aviation 
($24.95), math drill ($14.95), and a games 
pack ($14.95). Cassettes may also be used 
to store programs and data. 

The TRS-80 Pocket Computer, which 
is made for Radio Shack by Sharp 
Electronics Corp., can also be used as a 
calculator. Numbers can be edited, stored, 
reviewed and placed in equations with up 
to 15 levels of parentheses. 

Radio Shack has a one-year exclusive 
agreement with Sharp to market the 
Pocket Computer. A printer is scheduled 
for later. 

The Basic is very similar to Level I 
Basic, with the addition of string functions, 
15 arithmetic functions, and transcen- 
dentals. Sharp copied Level I when they 
originally designed the computer, accord- 
ing to a Radio Shack source, who says 
"Level I is very popular in Japan." 

The Pocket Computer's calculator 
ancestry and capability is reflected in its 
1,424-step memory, a memory with 26 
"data elements," and a 48-step reservable 
memory for storing frequently-used 
functions. 

The alphabetic keys are arranged in 
standard typewriter QWERTY format. 
The keys are about as close together as the 
keys of the first PET computer, which were 
actually calculator keypads. So unless 
you've got tiny fingers and/ or unusual 
dexterity, you may not be able to enter 
programs with more than two fingers, in 
the classic "hunt and peck" fashion. 

An automatic power-off feature saves 
battery life if no entry is made within 7 
minutes. 

Although some critics, such as Adam 
Osborne, have dismissed the Pocket 
Computer as a "stupid product" and 
"junk," Radio Shack will probably sell 
many thousands, perhaps even more than 
the Model III and the Color Computer. 

PC and CC 

The Pocket Computer's small size and 
low price will be the major factors in selling 



^ 




184 



CREATIVE COMPUTING 



Whatever 
happened to 
eenie, meenie, 
miney, mo': 



a perfect 
'iff for that 
\rban cowgirl! 



X 



I could be 
another 
Solomon . . 



This may put 
the Godfather 
out of business. 



If only 
my heart 
would stop i 
racing . 



It must use 
Bayesian, 
weighted factor 
analysis, and.. . 



Brilliant! 
Like a window 
into the future. 



frfaybe this' 11 
lelp me choose 
career. . . 



m 



1 



Would I 
rather have 
Winston's millions 
or Billy Joe's 
love? 



could 
tse it to 
select my staff. 









Should I 

buy stock 

or commodities 

in this economy? 




' / 



I 



Hmmmm . 

could be 

my ticket 

to the Boardroom 



Can't any 

of these people 

afford $29.95? 



, .t^ 



™ 

When Decision Master speaks everybody listens 

I ct's face it. We all have to make decisions. Decisions that can change our lives. Decisions that can 
make us happy or unhappy. Decisions that could win us tame or fortune. Now, Decision Master 
can help you make the best decisions of your lite. 

I Ise Bayesian theory to peer into the future . ..even if you've never heard of the Bayes' Rule. 
W) a complete weighted factor analysis., .without knowing what one is. Use discounted 
£ash flow to compare investment alternatives without bothering with present value 
tables. These and other sophisticated theories that were once the exclusive domain of 
professors and top business executives are built into DecisionMaster's algorithms... 
so you can use them at the touch of a ke\ ! 

DecisionMaster iseas) to use. It features: 

• A fully documented manual developed b\ an authority in the field. 

• A unique program-controlled cross reference system. 
' A powerful formatted screen data entr\ system. 

You'll use DecisionMaster in hundreds of routine decisions, 
as well as more important ones such as* Buying a house 
• Changing jobs- Selecting investment- Evaluating insur- 
ance policies* Expanding product lines- Leasing vs 
purchasing. 

If vou buy only one computer program this year, 
make it DecisionMaster. And when it speaks. 
listen. 




//J& 



x* V<* <& ' <$> 









#■ 



A'' 






■: ** ^x^' 

s^ ^ <C> » A 















CIRCLE 2000N READER SERVICE CARD 



<s°^V J^y 



V 



'TRS-80, cont'd . . . 

it to the many who will prefer portability to 
all else. It will probably come to be known 
as Radio Shack's PC, and the Color 
Computer will be called the CC, and jokes 
will be made about both nicknames on the 
order of the "Trash-80" epithet. Mean- 
while, both will sell better than any other 
company's computers, probably outselling 
both the Apple II and PET. 

Programma Games 

A variety of games and utility 
programs for the TRS-80 (and PET and 
Apple) is available at your local computer 
store, or from Programma International 
Inc. (3400 Wilshire Blvd., Los Angeles, CA 
90010). 

Of the eight Programma Level II 16K 
games I've seen, six are $6.95, and two 
(Pentominoes and Maze-80) are $9.95. 
Actually, only six of the eight are really 
games; Phonegrams is more of a demo 
program, and The "I Ching" Thing tells 
fortunes. 

Of the eight, I found Tank to be a very 
good two-player game, Maze-80, Fifteen 
Numbers, and Pentominoes to be fine (and 
somewhat addictive) for the solo player, 
Pachinko and Tribble Trap to involve as 
much (if not more) luck as skill, Phone- 
gram to be prosaic except for the Digit- 
Rotate feature, and The "I Ching" Thing to 
be much better for parties than for solitary 
use. 

Tank 

The full name of this game is Tank 
Search and Capture. The object is to 
collect as many points as possible before 
time runs out. 

Numbers appear at random locations 
on the field, and the first player to drive his 
tank over the number will add that number 
to his score. 

Complications include not being able 
to travel through any walls, and the 
numbers being harder to find among the 
letters that clutter up the field more and 
more, as the game progresses. 

This is one of the better Programma 
games, because it's almost entirely based 
on skill, and after some individual practice 
to learn how to use the control keys with 
some fluency, you've got a good chance of 
winning. 

Maze-80 

"The object of Maze-80 is to find your 
way thru the 8 mazes ... To move within 
the maze, use the arrow keys." Sounds 
simple. 

But wait — "as soon as each maze 
appears, the computer will start moving 
thru in the opposite direction. You must 
reach the exit on the right before the 
computer finds the exit on the left, or you 
lose!" 



So as you control one blip, the 
computer sends its blip in your direction, 
trying to get out before you do. If you stop 
to trace out the maze backward, from exit 
to entrance, the computer's blip may get so 
far ahead, you'll never catch up. 

This game can be addictive, and is not 
recommended for those with high blood 
pressure. 

Fifteen Numbers 

This program is called a "3-dimen- 
sional graphics version of that age-old 
game of Magic Squares." However, it is 
not magic squares, which requires adding 
up the numbers in the squares in various 
directions. Nor is it really 3-D; lines have 
been added in three places to make the 
display seem three-dimensional, but the 
effect isn't very good. 




This is a computerized version of the 
little plastic game with 15 small numbered 
squares that you move around within a 
plastic frame, one at a time, trying to get 
them into different arrangements. 

This is one of those programs you can 
run dozens of times before you catch on to 
the basic tricks of how to get squares into 
the locations where you want them. But 
then the program gives you another 
arrangement. To make things worse, the 
program also tells you in how many moves 
the pattern can be solved. 

Pentominoes 

This is a geometric puzzler. As the 
screen instructions put it, "A pentomino is 
made by joining five squares . . . There are 
12 pentominoes . . . You will be trying to 
put all 12 pentominoes together to form a 
larger shape much like doing a jigsaw 
puzzle. Unlike most jigsaw puzzles, 
pentominoes may be flipped over and used 
upside down." 



I L ft TuLl + 1 \ 

I l * * T » o • u r 2 




*:o pick • I 



You select one of six rectangles of 
varying dimensions, and then try to fill all 
the space within it with pentominoes, using 
each one only once, and using R to rotate a 
piece 90 degrees, F to flip a piece, etc. 

This is a highly challenging game, and 
filling even the easiest of the six rectangles 
could take hours, even if you're quite good 
at geometry. This may be good training for 
those IQ tests involving geometric figures. 

Pachinko 

Pachinko is a vertical pinball ma- 
chine, with seven pockets protected by 
slanting rows of graphics blocks. The 
program simulates the balls' random paths 
downward. 

You start with 15 balls, and shoot by 
just pressing any key - no skill is involved. 
Getting a ball in a pocket wins you 1 5 more 
balls; "to break the bank, you must get 500 
or more balls to your credit." 

Good programming, but since no 
skill is involved, this may be more suitable 
to the very young. 

Getting 500 balls isn't all that difficult, 
either; it took me less than five minutes to 
"break the bank." 

Tribble Trap 

The game is to capture alive a Tribble, 
which is a "small furry critter" that has a 
"mysterious healing power." It "can move 
in any direction, but only one sector at a 
time." 

"To capture the elusive beast, you 
must shoot out the sectors surrounding 
him." There are further complications. 

You're given a grid of 7 by 7 squares, 
and the "last known sector" of a Tribble. 
The point is to trap the Tribble, not blast 
him. So you try to guess the next direction 
he'll take. Not easy. The Tribble always 
seems to head for the sector you're about to 
blast. 

There can't be a great deal of skill 
involved here, since the Tribble slips away 
on random paths. To trap one seems to 
require as much luck as skill, if not more. 

Phonegram 

For $6.95 you can find a mnemonic 
for any telephone number you want to 
remember. Providing, of course, that the 
number translates to something like 
FLYAWAY instead of GFLWYRH. 

Also, as the spec sheet says, "This is a 
very good demonstration to friends of 
computing power because you show them 
the computer actually doing something 
useful for them personally." 

With Phonegram, you enter the 7- 
digit number, and the menu asks if you 
want (1) single-column format, (2) three- 
up format, or (3) the Digit-Rotate feature. 

Single-column format prints all 
possible combinations of the alphabetic 
equivalents of the telephone number 
entered, printing or I if these are in the 



186 



CREATIVE COMPUTING 



r 



number, "because no letters exist for these 
numbers on the dial." 

Three-up format prints three columns 
across the screen, instead of one. 

The Digit-Rotate feature is the best 
part of this program. It first converts your 
number to one possible set of letters. Then, 
by touching the keys 1 to 7, you can change 
any of the letters to either of the other two 
possible letters. This way, you can find out 
if there's a suitable mnemonic for the 
number much faster than by watching 
hundreds of groups of letters flash by on 
the screen. 

This program is more for fun than 
serious use, because you could do it much 
faster (and cheaper) with pencil and paper. 
However, that third item on the menu is 
very clever. 

The "I Ching" Thing 

This program "is probably the oldest 
(and most accurate) divination technique," 
according to the displayed instructions. "It 
uses 64 hexagons to form patterns that 
represent your fortune. Until recently, 
anyone consulting the i Ching' had to use 
wooden sticks and a book to read their 

fortune." 

1 Ching consists of two programs: 
"one to cast the hexagram, the other a data 
file with fortunes." 

Programma presents I Ching totally 



straight: one display says "We will use an 
electronic method to reach your subcon- 
scious mind. Our goal will be to contact 
your higher self or super-conscious." 

The program asks you to "quiet your 
mind," then "formulate your question," 
then "think about it, form an image. Then 
press any number on the keyboard and 
press ENTER." 




You do this six times; that is, you 
press six numbers and the program then 
generates a hexagram, based on a random- 
number generator that uses your six 
numbers. 

The programs informs you that 
you've cast hexagram 28, for example, 
then goes on to "calculate a new hexagram 
based on the old one." 

When I entered the question "How 
good is this program?" and used the 
numbers 1 through 6, the result was 



hexagram 37, which was recast to form 
hexagram 28. 

The reading for the first hexagram 
was "Developing. Some place." For the 
second, "Excess. Out of range." If that 
makes any sense to you, buy this program, 
which contains 64 of these pairs of words 
or phrases. 

Short Program #13 

Dick Spicer of Windsor, Ontario, 
Canada, sent this: 

"Here's a subroutine for the TRS-80 
that my seven-year-old likes. I use it in a 
mathematics and multiplication quiz 
program. When he gets 10 out of 10 right, 
the program branches to this sub. I 
thought some of your readers might like to 
add it to their game programs. 

10 CLS 

110 PRINT 'YOU DESERVE - 

115 FOR 0=1 TO 500t NEXT Q 

117 CLS 

120 PRINT CHR*<23> § FIREWORKS" 

125 FOR Q=l TO 500 t NEXT Q 

130 FOR L=l TO 300 

140 P=RND<1023) 

150 PRINT Pt "* * BANG - 

155 NEXT L 

160 CLS 

170 RETURN 

"Leave about 8 to 10 blank spaces 
between the asterisks and also before the 
BANG in line 150." D 



"N 



TRS-80 -I* WORD PROCESSING 
AT A FRACTION OF THE COST 

VERSION 1 48K w/disk $70.00 
VERSION II 32K w/disk $60.00 

• On Screen Editor 

• Text Compiler 

• High speed key actuation for quick 
text input 

• Right hand justification 

• Word scan and replace 

• Block move and delete 

Our NHS WORD PROCESSING SYSTEM is 

comparable to the leading word processors. 

California residents add 6% sales tax. 
No charge for shipping within USA. 

REAL COMPUTING 

P.O. Box 7000-289 
Palos Verdes Peninsula, CA 90274 

"Tandy Trademark 

CIRCLE 232 ON READER SERVICE CARD 




TRS-80* PROGRAMS 

32K 2 Disk Drive Min 
WORD WIZARD I $19.95 

Full upper and lower case characterization. Up to 3 pages of text in 
memory at a time. Store up to 30 pages ol text per diskette. Load, 
Save, Print-out (single or multi-copies) Insert/ Delete lines, char- 
acters, or blocks of text. Block Move/ Delete/ Copy lines. Typesetting 
and variable length page. Type in the text sloppy, clean it up on the 
screen and print out a perfect copy. 

MATRIX MANIPULATOR $19.95 

All information can be manipulated by columns and rows; adding, 
subtracting, multiplying and dividing columns by other columns 
and putting the results in a third column with statistical analysis. 

BUILDER JOB COST $29.95 

Complete job cost analysis package for home builder. 189 user- 
defined cost categories. Automatic invoice control to actual cost of 
the home under construction. User input for estimated costs of 
home. Computer generated cost-to-cost comparisons. Up to 47 
homes under construction per data diskette. 

WORD WIZARD II $29.95 

48 K updated version of Word Wizard I. 26 user-defined keys to 
speed typing chores. Word oriented with automatic wrap around 
capabilities. Variable printout formatting. Easy to use. 

WORD WIZARD I & MAIL LIST COMBINATION $29.95 

Word Wizard I as above with 500 mail listings per diskette. Com- 
puter personalizes letters to selected recipients of letters, forms, 
etc. using variable select codes. 

Please allow 2-4 weeks for delivery on Disks only 
Send $1.00 for full catalog of Hardware & Software 

Computer Programming Unlimited 

6712 Langston Drive 

Austin, Texas 78723 

(512) 928-2626 

MasterCard and VISA Accepted 
'TRS-80 is a Registered Trademark of Tandy Corp. 
— — ^CIRCLE 148 ON READER SERVfCE CARD 



NOVEMBER 1980 



187 




BEYOND A SCOTT ADAMS 

ADVENTURE ? 



ODYSSEY 

ITEMS NOW HAVE 3-D-ability 
(Insides, Outsides,etc) 
MULTI-PLAYER -up to 12 
and they can be friend or foe 
UNRESTRICTED COMMANDS 
up to full paragraphs! 

COMING SOON... 
Bug Your Dealer ! 



dventut& 

INTERNATIONAL 

Bo* 3435 • Longwood Fla 32750 
(305) 862 6917 



CIRCLE 108 ON READER SERVICE CARD 



OKPP1SE 



JACK 



the graphics & games people 



New! 
THE DESIGNER 



HIRES 
GRAPHICS 


m ^ WW 

^H ' ■ * *. Mm 

■ ■ ... 1^5 

Mm MA 

mm mm mv 




5«mj $ia-» MiM-r 8B.r^U ,w 



$24.95 

DISK& 
MANUAL 



THE DESIGNER is a user oriented APPLESOFT 
program that does the HPLOTing for you. Sometimes 
referred to as the 'poor man's graphics tablet', it 
places lines and complex circular functions on the 
APPLE HIRES screen with the use of game controls 
and single key-strokes. 2 page animations, disk save 
and recall, and simple cursor-driven executions are 
among the features of this crash proof program. 

REQUIRES 48K APPLE/APPLESOFT ROM/DISK 

AVAILABLE FROM YOUR DEALER OR DIRECT FROM 
APPLE — JACK BOX 51, CHERRY VALLEY, MA 01611 

(INQUIRIES INVITED) 
CIRCLE 106 ON READER SERVICE CARD 



eVie\AA 



Steve Gray, et al 



188 



Computers in Mathematics: A Sourcebook of Ideas, edited by 
David H. Ahl. Creative Computing Press, Morristown, NJ. 222 
pages, paperback $15.95. 1979. 

According to the back cover, this collection of 77 articles 
from Creative Computing is a sourcebook of ideas for using 
computers to learn about mathematics. 

The ten sections are on Introducing the Computer and 
How to Buy a Microcomputer System; Thinking Strategies and 
How To Solve Problems; Computer Simulations; Probability; 
Mathematical Miscellany (progressions, sports predictions, 
double precision, circular functions, etc.); Art, Graphics and 
Mathematics; Computer Assisted Instruction; Programming 
Style; Short Programs; Puzzles, Problems and Programming 
Ideas. 

The book has over 200 problems for assignment, and 
nearly 100 programs, nearly all in Basic. 

My favorite articles are on computing factorials, solving 
alphametric puzzles (SEND+MORE = MONEY), multipre- 
cision multiplication, double precision, circular functions, trig 
patterns on printers, "How to Hide Your Basic Program," and 
several of the short programs. 

This book can be recommended, not only for teachers of 
computer science and mathematics, but for anyone interested in 
computer math. The reprinted articles are the best to have 
appeared in this magazine, from the beginnings in 1974 up to 
1979. 

From Dits To Bits: A Personal History of the Electronic 
Computer, by Herman Lukoff. Robotics Press, Box 555, Forest 
Grove, OR 971 16. 230 pages, hardcover $12.95. 1979. 

This is the autobiography of a computer pioneer who, until 
he died last year, was director of technical operations at Sperry- 
Univac. It is mostly about his involvement in five of the first 
computers: ENIAC, EDVAC, BINAC, UNIVAC I, and 
LARC. 

After two chapters on his early interest in amateur radio 
(from which comes the "dits" of the title), Lukoff describes his 
days as an EE student at the University of Pennsylvania's 
Moore School. During his senior year, in 1943, he was hired to 
work on "Project PX" at The Moore School, working for J. 
Presper Eckert on what eventually became ENIAC. 

After two years in the Navy, Lukoff returned to The Moore 
School to work on a follow-on contract to ENIAC, a computer 
project called EDVAC, for which, among other things, he 
devised the control system for the mercury-tank memory. 

Eckert and John W. Mauchly (who both wrote 
introductions for this book) then formed the Electronic Control 
Co., which became the Eckert-Mauchly Computer Corp., 
which became a division of Ramington Rand, which became 
Remington Rand Univac, a division of Sperry Rand Corp. 

Lukoff stayed on through the various acquisitions and 
mergers, working on the now-famous computers. He was chief 
engineer on the LARC program. 

In his later years he returned to amateur radio, and bought 
a Radio Shack TRS-80 computer, which in a photograph 
caption he describes as being "more powerful than the 
UNIVAC I central processor." 

If you have any interest in the pioneering days of 
computers, this is a fine book to read, full of personal detail, 
enough technical details to be interesting but not so many as to 
be boring, and written with great enthusiasm. 

For the non-technical, the book ends with an eight-page 
glossary. 

CREATIVE COMPUTING 




32 Basic Programs for TRS-80 (Level II) Computer, by Tom 

Rugg and Phil Feldman. Dilithium Press, Box 92, Forest 
Grove, OR 971 16. 282 pages, paperback $15.95. 1980. 

Whether or not you like the mix of programs, this book is a 
model of how such a book should be written and published, and 
as such is one of DilithiunVs best. 

For each of the 32 programs, the authors provide sections 
on Purpose, How to Use it, Sample Run (photographs of the 
screen, usually), Program Listing, Easy Changes, Main 
Routines (what the various parts of the program do), Main 
Variables, and Suggested Projects. The listings and runs are all 
printed quite clearly. 

As for the programs themselves, they are in six groups: 
applications (biorhythm, checkbook balancing, loan payments, 
etc.), educational (math drills, metric conversion, vocabulary 
expansion, etc.), games (a Mastermind lookalike, obstacle race, 
Wari, etc.), graphics (kaleidoscope and three others), 
mathematics (least-square curve-fitting, integration, simul- 
taneous equations, etc.), and miscellaneous (approximation of 
pi, powers of integers, etc.). 

The mix is about as good as can be expected, intended to 
appeal to the widest number of prospective readers, and is much 
better than several other mixes available in similar books. 

What may be unique to this book are the "Easy Changes," 
which show how to make the program work differently. "You 
do not have to understand how to program to make these 
changes," the introduction says. The biorhythm program, for 
instance, can display the number of days between any two dates 
if a new line is inserted, and the number of days of the chart 
shown on the screen can be changed by changing the number in 
line 360. 




Structured Basic And Beyond, by Wayne Amsbury. Computer 
Science Press, 9125 Fall River Lane, Potomac, MD 20854. 325 
pages, paperback $10.95. 1980. 

This book is used in an Introduction to Computer Science 
at Northwest Missouri State University, where the author is an 
associate professor. 

The three-semester-hour course covers Chapters 1-6, on 
The Basic Machine, Loops and Structures, Names and 
Messages, Three Data Structures, Expressions and Functions, 
and Files. Chapters 7-9, according to the preface, are "included 
for use in a course with a faster pace, for enrichment, and for 
self-study." They are on Strings and Linked Lists, Stacks and 
Queues, and Tree-Like Structures. 

Appendix A contains answers to the 9 or 10 self-review 
exercises in each chapter. Appendix B contains a Basic 
standard, which is actually some comments on an interim 
report. A good bibliography provides references to books on 
languages, data structures, simulation, hardware, etc. 

The opening words set the style for the book, "A computer 
spins its wheels — very, very rapidly. Its wheels are really 
electronic circuits which go through a cycle of operations again 
and again ..." 

The writing is conversational, the coverage thorough, and 
the longer programs are fairly easy to understand. The book is 
intended for interactive terminal use. 

Amsbury uses pseudocode to describe the intermediate 
steps in deriving an algorithm, up to page 52 in conjunction with 
flowcharts; without them afterwards. This apparently unique 
feature may dismay flowchart-oriented readers, with the use of 
"endwhile," "dequeue" and "endif." But it's not too hard to 
figure out and helps learn how to develop "a clean logical 
program structure," as Chapter 1 says. 



Y 



SPEECH RECOGNITION 




NOW TALK TO YOUR: 

PET, TRS-80 (Lll) 
AIM-65 and SORCERER 



NEW COGNIVOX SR-100 has 32 word (or short phrase) vocabulary 
(AIM-65 with 4K RAM. 16 words). Up to 98% recognition rate. 
Breakthrough price of only $119 includes microphone, cassette with 
software and manual. Version for the TRS-80 (VIO-332) costs $149 but 
also has 32 word speech output and music capability, includes all above 
plus speaker/amplifier. For the Sorcerer, in addition to SR-100, we offer 
COGNIVOX VIO-132 which includes speech output and music and 
extensive software and costs $1 79. Please add $3 for shipping in the US, 
Calif add 6% tax. Foreign orders welcome, add 1 0% for processing and 
shipping by air. When ordering, please specify make, model and memory 
size of your computer. 



k 



VOICETEK 

Dept. C, P.O. Box 388, Goleta, Ca 9301 



u 



CIRCLE 247 ON READER SERVICE CARD 



APPLE PASCAL 

If you have it, you'll want this program. If you don't, 
here is a great reason to get it. 

INFOTREE 

The Personal Information Manager 



Infotree is a Heirarchic Information Management System de- 
signed for personal use. It allows you to easily store, retrieve, 
alter and organize information any way you want. A wide 
variety of commands allow you to update and query the database 
that you designed! Listing or printing of individual items or entire 
"subtrees" requires but a single command. Cross Referencing 
across data structures is easy. It even prints mailing labels. Low 
Level I/O and block buffering makes Infotree blindingly fast! 
Human Engineering makes it brilliantly simple! Single keys select 
commands and retrieve previously entered keys. Applications 
include mailing lists, directories, memos, scheduling, anything 
you can think of. This system, providing far more than anything 
comparable on the market today, costs only $69.95. 



The first PASCAPPLICATION from 

Dept. B 
6 Main Street 
[Sirore cKJ Ogdensburg, N.Y. 13669 

===== ' (315) 393-2640 

Call us for the location of the dealer nearest you. We will 
use INFOTREE to find him in seconds! 

CIRCLE 237 ON READER SERVICE CARD 



NOVEMBER 1980 



189 



Bridge the GAP in your 
Business Accounting. 

GENERAL ACCOUNTING PACKAGE. This is a proven double en- 
try accounting system with user definable accounts. The account 
numbers are made up of 7 4-digit fields allowing 7 levels of account 
classifications. With the use of the Operator Report Selector 
Generator (ORSG), you can generate any type of report you desire, 
or use report programs in GAP-GL, GAP-AP, and GAP-AR. 

GAP-GL Includes all basic GAP functions, plus entry of General 
Ledger transactions, prints General Journal, General 
Ledger summary and detail, Balance Sheet, Profit and 
Loss Price $124.95 

GAP-AR Requires GAP-GL to run, allows adding A/R invoices, 
printing Sales Journal, detail A/R report, Acct. Aging, 
add/update Cash Receipts with register, Cash Receipts 
Journal, and A/R Billing Price $99.95 

GAP-AP Requires GAP-GL to run, allows adding of A/P invoices, 
printing Purchase Journal, detail A/P report, Aging of Ac- 
counts, Check Writing, Check Printing, Cash 
Disbursements Journal Price $99.95 

SAVE NOW by purchasing all three packages for only $299.95. 

Simply mention this ad when calling in your order, or send the ad 

with your mail order. 

Your BA/VISA or MasterCard is welcomed. 
Call today to receive complete package specifications. 

System requirements are 48K CP/M. CP/M is a registered trademark of Digital Research. 



PROFESSIONAL DATA SYSTEMS 

318 E. 18th Street 

Bakersfield, CA 93305 

Telephone (805) 323-0891 



<w> 



CIRCLE 228 ON READER SERVICE CARD 



BLITZ BUG LIGHTNING & TRANSIENT VOLTAGE SUPPRESSOR 

LETTERS OF RECOMMENDATION : 



TRS-80 



XEROX 



>°> 



HAZELTINE^ 






h*£S?C 



o^bo 



as 



.SUPER* 

'BR All 



$24.95 

DELIVERY FROM STOCK 

ADD $1.50 SHIPPING & HANDLING 

N.J. RESIDENTS ADD 5% SALES TAX 

DEALER INQUIRIES INVITED. 

OMNI COMMUNICATIONS COMPANY, Inc. 

200 WEST COUNTY LINE ROAD ' 

R.D. 3, BOX 200 

JACKSON, NEW JERSEY 08527 

(201)928-1477 (609)259-2617 



CIRCLE 174 ON READER SERVICE CARD 



Pathways through the ROM: Guide to Level II Basic and DOS 
Source Code, by George Blank, Roger Fuller, John Hartford, 
John T. Phillipp, and Robert M. Richardson. SoftSide 
Publications, 6 South St., Milford, NH 03055. 119 pages, 
paperback $19.95 plus $1 shipping. 1980. 

As the preface notes, this book is a compilation of four 
items previously published separately. Part I consists of the 
forward, introduction and the first nine chapters of 
Richardson's $10 TRS-80 Disassembled Handbook, and 
teaches the use of the subroutines residing in the Level II Basic 
ROM. 

Part II is Fuller's $18.95 Supermap, which lists, in 
sequential order, comments on the contents of the Level II Basic 
ROM, indexed to hex memory locations. 

Part III provides two programs from PROG 1 80 magazine: 
Philipp's HEX-MEM monitor (written in Basic, permits 
examining the ROM directly and experimenting with machine- 
language programming); and Blank's Z-80 disassembler, which 
when used with a computer, a printer and the comments in 
Supermap, permit producing a commented source listing of the 
Level II Basic ROM for personal use. 

Part IV contains Hartford's comments on disk operating 
systems TRSDOS and NEWDOS, and Western Digital's spec 
sheet for the floppy-disk controller chip used in the TRS-80. 

The preface says "These programs, while very useful, will 
not satisfy the serious programmer, who will desire more 
powerful programming tools," such as Radio Shack's Editor 
Assembler, a machine-language monitor such as T-BUG, etc. 
However, they do provide a great deal of information, pulled 
together from six sources, at less than 60 percent of the original 
cost, that is indispensable to any and all adventuresome 
explorers of the TRS-80's Level II Basic ROM. 



ma& 



Inside Level II: A Programmer's Guide to the TRS-80 ROMs, 

by John Blattner and Bryan Mumford. Mumford Micro 
Systems, Box 435-B, Summerland, CA 93067. 70 pages, 
paperback $15.95 plus .75 postage. 1980. 

Written mainly for the assembly-language programmer, 
this slim and highly useful volume shows how to use the many 
sophisticated and useful routines already resident in the ROMs. 

Part I describes the locations of these routines, the 
optimum entry points for minimizing their calling sequences, 
and the setups and assembly-language instructions required to 
call them. 

The 10 chapters of Part I are on Key Locations and Entry 
Points; Registers, Buffers and Variable Passage; Conversion 
Routines; Arithmetic Operations; Mathematical Functions; 
Keyboard Input; Cassette Input/ Output; Video Output; Video 
Display Control; and Miscellaneous Routines and Infor- 
mation. 

Part II, Linking Assembly Language and Basic Programs, 
shows how to write a single, smoothly-joined program that 
combines the best features of both languages, according to the 
preface. The authors present a program format that 
incorporates the convenience and string-manipulating abilities 
of Basic with the speed and efficiency of machine-code 
subroutines. Instructions are given for creating a composite 
program structure that loads with the SYSTEM command, and 
executes in both Basic and machine language. 

The preface notes that "To take full advantage of the 
information in this book requires a knowledge of Z-80 assembly 
language programming. Readers with such knowledge who are 
also fortunate to own a TRS-80 without a disk should 
experience little difficulty in putting this information to 
immediate use. The presence of a disk complicates matters, 
principally because the Level II ROM has exits to Disk Basic 
that are not always plugged up when the latter is not present, 



190 



CREATIVE COMPUTING 



At last. ..the 



and also because there are (and will be) different versions of 
disk-system software. Nevertheless, all the material of this book 
can be used with disk systems provided sufficient care is taken, 
and the book details exactly where and how special allowances 
for a disk need to be made." 



$&m 



The 8086 Primer: An Introduction to Its Architecture, System 
Design and Programming, by Stephen P. Morse. Hayden Book 
Co., Rochelle Park, NJ. 214 pages, $8.95 paperback. 1980. 

Although the text doesn't tell you, the back cover notes 
that the author is "the man responsible for the architectural 
definition of the 8086 processor." 

After an introductory chapter you can skip if you have a 
good knowledge of computers and small computers, the book 
describes 8086 architecture, going into machine organization 
(register and memory structure, addressing modes) and the 
8086 instruction set. 

Chapter 4, on system design, considers the 8086 as a circuit 
component, and shows how to use it, together with other 
components, to form a complete small computer system. 

Programming is divided into assembly-language program- 
ming using the low-level ASM-86, and 8086 high-level- 
language programming using PL/M-86, in the last two 

chapters. 

Morse writes very clearly, covers a lot of territory, and uses 
very helpful illustrations that in some cases are uniquely 

ingenious. 

Although the book is of course most easily understood by 
those already familiar with at least one microprocessor, the 
author's easygoing style permits even a bright beginner to get a 
great deal of information from this very well written book. 



*m& 



All About Personal Computers. Datapro Research Corp., 1805 
Underwood Blvd., Delran, N.J. 08075. 65 pages, paperback 

$25. 1980. 

Here is a wealth of detailed information about 15 personal 
computers, sandwiched in between five pages of so-so 
introductory material and 22 pages of listings of vendors, of 
little use since the listings contain only addresses and phone 

numbers. 

However, Section 2 gives more details on the 15 systems 
than you're liable to find anywhere else, including the 
manufacturers' own spec sheets. Each computer gets two pages: 
the first provides a photograph, background information, and 
system characteristics. The second page gives full details on 
hardware and packaging, software, and support services 
(documentation, support, terms and conditions). 

S/tcV<ot. \ , K\\ AJ&out Personal Computers , discusses the 
history of personal computers (briefly), current and projected 
market sizes, current applications, how personal computers are 
sold (stores, dealers, computer companies), future trends, and 
How to Buy a Personal Computer (evaluate your needs, 
identify which systems seem to satisfy your requirements, try 
them hands-on, make your selection). 

Section 3, Directories , seems mainly a filler, providing 
no information at all about product, only the addresses and 
phone numbers of hardware, software and peripheral vendors. 
Many of the companies listed under Personal Computer 
Peripherals Vendors are highly unlikely, such as CPT, Data 
General, DEC, Wang, Control Data, etc., page after page of 
interesting but almost entirely useless listings. 

But for the serious beginner, or even for the expert, who 
wants all the data he can get on the top 15 personal computers, 
this is the thing to buy. 

(Datapro publishes detailed, looseleaf, updated reports on 
software, minicomputers, office automation, etc., and a variety 
of short reports.) □ 



Typewriter Interface! 





Turn your electric typewriter into a low cost, high 
quality hard copy printer. 1 Year Warranty 

Dynatyper-the patented* RDI-I /O Pak is fast becoming the industry 
standard for typewriter output. Why? Because: 

1. It takes 2 minutes to initially install and 5 seconds to remove or 
replace. 

2. You do not have to modify your typewriter. All factory warranties 
and maintenance agreements on your typewriter will be honored. 

3. You can use it with all powered carriage return typewriters that 
have U.S. keyboard. Our Model I works with all non Selectrics and 
our Model II works with Selectrics. Conversion between models 
takes 2 minutes and the kit (26 plungers) is available for a nominal 
charge. 

4. You don't have to lug around a bulky printer when you travel. If 
there is a typewriter at your destination, you can install the light 
(3 lbs.) I/O Pak in just 2 minutes. 

5. Same interface for TRS-80, Apple and GPIB. Centronics and Pet 
compatible interfaces are available in third quarter 1980. Electric 
pencil available. 

6. Delivery: Stock to two weeks. Price: $499. for the complete system, 
FOB Rochester, Domestic. 

Over 1000 in operation today. VISA and MasterCard accepted. Call 
Ken Yanicky at 716-385-4336. 



•Potent Pending 




3100 Monroe Avenue, Rochester, New York 14618 incorporated 

CIRCLE 234 ON READER SERVICE CARD 



« THSCSfS » 




NOVEMBER 1980 



191 



MISOSYS is proud to announce EDAS, a sophisticated Z-80 
Editor Assembler for the '80 Model I & Model III 

IplJC***** JUST LOOK AT THESE FEATURES *****J[ | pf J| 

All EDAS commands and source text may be entered in 
either upper case or lower case providing ease of operation 
as a text editor. 

.. Direct assembly from memory or disk by means of *GET 
assembler directives entered into the text buffer. This 
provides for a symbol table buffer area of over thirty 
thousand bytes with text buffer equal to your drive 
capacity ! 

. . Direct assembly to disk or memory for faster debugging 
operations! Branch allows you to execute your program, that 
has been assembled to memory, and then return to EDAS. 

.. Source and object files interface directly with disk 
using TRSDOS (tm) , VTOS (tm) , or other compatible system. 

.. DOS "System" command functions KILL, DIR, FREE, and LIST 
are available from within the environment of EDAS. 

The Editor, with renumber, maintains command syntax 
identical to the BASIC editor. Global change allows the 
user to alter a string throughout a designated range of 
lines while block move relocates lines of text. 



Great amounts of time and effort were expended to give 
this Editor Assembler the absolute best in ease of 
operation and functional efficiency. Optimize assembly 
programing time; use the Editor Assembler designed with the 
programmer in mind. EDAS is priced at $79.00 plus $3.00 
S&H. A 72-page EDAS reference manual is included. 

MISOSYS - Dept C 
5904 Edgehill Drive 
Alexandria, Virginia 22303 
703-960-2998 
Dealer Inquiries Invited 



r chai 




CIRCLE 224 ON READER SERVICE CARD 



i o ! 

! OUTPUT DATA: Data that has been ! 
excreted from an internal storage 
medium to a flush-down device. 

J P j 

J PAPER TAPE: A long, paper-thin worm | 
that lives as a parasite in the intestines 
of a storage medium. 
PRINTER: Johann Gutenberg (1398 9 - 

i 1468). ! 

! PROGRAM: (Short for ProGrammy). A ! 
music award for professional key- 
board operators. 

! PUNCHED CARD: An inebriated card ! 
having almost 80 random columns 
representing nothing intelligible. 

i 5 i 

i 

S J 

SOFTWARE: Formal evening attire for 

female computer analysts. 
STORAGE DEVICE: Cold room, or j 

morgue, for Terminal Data. 
SYSTEM: A foolproof method for dealing 

and winning at punched cards. 

T ! 

TERMINAL: a) A Grand Central Com- ! 
puter Station for divergent trains 
of thought, 
b) See Data. 

U i 

USER: An addicted individual who re- 
quires the services of a methadone 
processing center. 

6 S 


J DIGITAL COMPUTER: A machine for 
processing fingerprints. 

i DISC PACK: A six pack of alcoholic 
beverage, designed for consumption 
aboard an alien space craft. 

! F 

FORTRAN: Short for Formula Training, 
a nourishment given to baby (or 
micro) computers. 

i G 

GENERAL Purpose Computer: A four 
star all purpose war gaming machine. 

! H 

! HEAVY PENCIL: (See Light Pen). 

' 3 

I i 

INPUT: CENSORED (See Input Device), i 
INPUT DEVICE: A male electronic probe ! 
designed for computation, and pro- 
creation of future micro computers. 

K | 

KEYBOARD: A dozing computer pro- 
grammer. 

L ! 

LIGHT PEN: See Heavy Pencil. i 
LINE PRINTER: A stand-up gag writing ! 
computer for composition of one- 
liners. 

N j 

NANO-SECOND: A second in Mork j 
Time. 

4 J 


! A 

! ALGORITHM: Trendy dance for hip 

programmers. 
ANALOG: A roughly hewn wooden seat, 

used by computer analysts. 
j APPLICATION: The act of applying or 

laying on of color decals to hardware 

surfaces. 

i B 

BASIC: Acronym for Bunglers All- 
purpose Slang Interjectory Claptrap, 
a series of systematized exclamations 
taught to initiates. 

BUG: (See coding). 

c | 

CARD READER: Tarot technician. j 
COBOL: An acronym for a computer 

language that is Completely Over and ! 

Beyond reason Or Logic. 
CODING: A cough syrup for treating a 

sick computer who caught a bug. 

(See bug). 

I) ! 

DATA PROCESSOR: A mechanism ! 
which chops, shreds, slices, or grates 
information into digestible bits. 

DATA, TERMINAL: Autopsy report. ! 

DEBUG: Delicing the computer center. 

2 ! 


So ? 2 ° ^ o -g 

S c o ~ t 3 <o i 

o £ 2 P ot c P 

U * £ £->» c ® fc • >- 

i §$» ! fi lilt j ocg • i 

lis ° s- |«h 5T8«« ■- i 8 1 i 

! .2 f.s£ n f f§° E S ! Q O 5 °- * ! 

j § set !]£?**>{*« *■ °fi ° 



192 



CREATIVE COMPUTING 







In Air Traffic Controller \% 

you assume responsibility 

for the 

safe A- 

flow of 

air traffic within a 15x25 

mile area up to 5,000 feet 

in altitude. During your 

shift as a controller in 

charge of this airspace, 26 

aircraft become oactive and under 

your control. Jets and prop planes 

have to be guided to and from the 

two airports, navigational beacons 

and ten entry/exit fixes. The aircraft 

enter the controller's airspace at 

various altitudes and headings 

whether or not you are ready. 

Air Traffic Controller retains the 
basic realism of air traffic control. 
This program requires the same 
steady nerves under pressure and the 
same vastant, almost instinctive, 
analyses of complex emergencies 
which are demanded of a profession- 
al air traffic controller. But "ATC" 
adds the excitement and well-defined 
goals of a game. This is just a 
simulation, and all passengers left in 
air traffic limbo by a panicked player 
will live to fly another day. 

Your goal is to get all of the aircraft 
to their assigned destination before 
the shift is completed. At your 
disposal are a radar display of the 
aircraft positions in the control area; 
coded information concerning air- 
craft heading, destination and fuel 
supply; navaids enabling you to hold 
aircraft or assign them automatic 
approaches; and commands to alter 
the altitude and heading of the 
aircraft. Working against you are 
altitude and heading requirements, 
fuel restrictions and, of course, the 
inimitable clock. 



i;L~ 






The most obvious measure of 
difficulty of a game is the clock 
setting at the beginning. In a 99 
minute game you will have time to go 
fix a sandwich between the appear- 
ance of two successive aircraft, while 
in the 16 minute game you may not 
have time to swallow before all of the 
aircraft have appeared. 

No two games, even at the same 
clock setting, are ever alike. As 
controller, you must cope with the 
unique requirements of each aircraft. 
The game will end if you commit a 
"boundry error," that is, if an aircraft 
fails to leave your area at the proper 
altitude and exit fix. ..causing an 
unpleasant surprise for the controller 
next door. The game also ends if you 

^^ fail to leave a 

— ^^^1"^&^ comfortable 

margin of 

safety 

be- 



Jl 




tween the aircraft as they whiz past 
each other. In cases of excessive 
delay, fuel supply considerations will 
become invested with a particular 
sense of urgency. 

Successful guidance of all aircraft 
to their destination is a heady 
accomplishment. This never fails to 
thrill ATC enthusiasts at each suc- 
cessive level of play. 

Your local retail store should carry 
Creative Computing Software. If your 
iavorite jetailer does not carry the 
software you need, have him call in 
your order to (800) 631-8112. Or you 
can order directly from Creative 
Computing. Write to Creative Com- 
puting Software, P.O. Box 789-M, 
Morristown, NJ 07960. Air Traffic 
Controller is now available for the 
16K TRS-80 (3006), for the 16K Apple 
II and Apple II Plus (4008), the 8K 
Sorcerer (5008) and for the 4K Sol-20 
(8001). All are on cassette for $9.95. 
Include $1.00 for postage and han- 
dling. For faster service, call in your 
bank card order toll free on our order 
hotline. (800)631-8112. 

Prices are subject to change 
v without notice. 





creative 

compafcttttf 
software 



seRsatiowal software 



CIRCLE 300 ON READER SERVICE CARD 



Conpleat 

Corripu 
Catalog 



COMPUTERS 



64K TABLE TOP SYSTEM 

SD Systems announces the SD-700, a 
64K table top computer system that 
includes a high speed 32mb fixed/ remov- 
able disk. The disk can be expanded to a 
maximum of 96mb. 




The SD-700 is a single or multi-user 
system. In its multi-user configurations, it 
supports up to five users with user 
partitions of 48K and a 16K operating 
system with a maximum memory capacity 
of 256K. 

The standard configuration offered 
provides two Z-80 central microprocessors 
operating at a 4 MHz CPU speed and two 
Input/ Output ports. Included with the 
SD-700 is Cosmos, a Communications 
Oriented Multi-user Operating System 
which supports CP/M compatibility, 
Cobol, M Basic, CBasic, and other com- 
pilers, and individual and shared files for 
multi-user applications. 

SD Systems, P.O. Box 28810, Dallas, 
TX 75228. (214)271-4667. 

CIRCLE 301 ON READER SERVICE CARD 

6809 SYSTEMS 

Gimix 6809 Systems feature 25 Amp. 
c.v. ferro-resonant transformer, fifteen 50- 
and eight 30-pin bus slots, a minimum of 
32K of Static RAM, and a choice of I/O 
cards. A variety of system monitor options 
are available including the GMXBUG 09 
monitor/ debugger and SWTPs SBUG-E 
monitor. 

Gimix' 6809 CPU is an SS-50 proces- 




and features reverse video, halftone, field, 
character blinking, and addressable 
cursor. Prices range from $4995 to $9995. 
Micro Card Systems, Inc., I85 Main 
St., Port Washington, NY 1 1050. 

CIRCLE 303 ON READER SERVICE CARD 

OFFICE SYSTEMS 



sor board which features selectable 
processor clock speeds of I, 1.5, and 2 
MHz. It has provisions for a variety of on 
board devices, including a 95 ll or 95 12 
arithmetic processor, 6840 programmable 
timer, time of day clock with battery back- 
up, IK of scratchpad RAM which can be 
CMOS with battery back-up, and four 
PROM/ ROM/ RAM sockets that can 
hold up to 32K of on board software. 

Gimix, Inc., 1337 West 37th PI., 
Chicago, IL 60609. (312) 927-5510. 
CIRCLE 302 ON READER SERVICE CARD 

SMALL BUSINESS 
COMPUTER SYSTEM 





The MCS 7000 is a self-contained 
desk-top microcomputer system with a 
built-in keyboard, high-resolution CRT 
display, 64K capacity, and two dual-sided 
floppy discs. Available with the system is a 
high-speed printer that doubles as an office 
typewriter. 

It features an RS-232C port and can 
be interfaced with standard TTY's, 
"dumb" terminals, other MCS 7000 
computers, or tied into a main frame 
computer. Standard programs include: 
Accounts payable, accounts receivable, 
mailing lists, payroll, word processing, 
inventory control, general ledger, and sales 
charts. 

MCS 7000 has a full ASCII keyboard, 
9-key cursor, a 12-key numeric entry 
keypad, and 15 special keys for custom 
symbols. The CRT display is a 12" screen, 
24 characters deep by 80 characters across, 



CMC Marketing introduces a new 
line of computer systems. These include 
the Series 100 designed for the small 
business and word processing user and the 
Series 200, a multi-terminal system 
designed for use in larger businesses with 
expanded data processing requirements. 

The systems are built around the 
Z80A microprocessor and feature the 
industry standard S-100 bus mainframe. 
Systems can be configured with diskette 
storage of up to 4 megabytes and hard disk 
storage of up to 28 megabytes. 

All CMC systems utilize the CP/M 
operating system, enabling user to run 
most CP/ M software on the system. 

CMC Marketing Corp., 10611 Har- 
win, Suite 406, Houston, TX 77036. (713) 
995-4960. 

CIRCLE 304 ON READER SERVICE CARD 

MULTI-USER MICROCOMPUTER 
SYSTEM 




Intertec Data Systems Corporation 
has announced a multi-user "shared-disk" 
microcomputer system called the 
CompuStar. 

The CompuStar system consists of a 
network of video display terminals which 
employ their own internal microprocessor 



194 



CREATIVE COMPUTING 



and dynamic RAM. The terminals are tied 
together in a "network" fashion to "share" 
the resources of a single Winchester or 
other hard disk device. 

The system architecture is based 
around one of three Disk Storage Systems 
consisting of a hard disk device, complete 
with power supply, and a disk controller 
and multiplexor circuitry to "tie" user 
stations into a common disk system. A 
tabletop 10 megabyte Winchester-type 
drive is offered which will retail for $3995. 

Intertec Data Systems, 2300 Broad 

River Rd., Columbia, SC 29210, (803) 

798-9100. 

CIRCLE 305 ON READER SERVICE CARD 

LOW COST SINGLE- BOARD 
COMPUTER 

The Model SBC-02 single-board 
computer is a minimal 4-chip system on a 
6" x 6" printed circuit board, which 
features a 6802 processor with 128 bytes of 
RAM, 2K of EPROM, and parallel or 
serial I/O. A wire-wrap area is provided 
for custom interfacing or other expansion. 

A machine level monitor called 
Humbug can be installed to provide 
program entry and control, single- 
stepping, breakpoints, and other front- 
panel functions from a serial terminal. In 
single quantities, the computer costs $25 
for a bare board with instructions, $75 for 
a parallel I / O kit, or $ 1 50 when wired and 

tested. 

Star-Kits, P.O. Box 209, Mt. Kisco, 

NY 10549. 

CIRCLE 306 ON READER SERVICE CARD 



TERMINALS & I/O 



SCIENTIFIC WORD 
PROCESSING SYSTEM 



similar in appearance to a badminton 
birdie. Printer speed is 55 characters per 
second even when printing scientific 

notation. 

Multi-level equations that might 
involve several layers of numerators, 
denominators, and superscripts can be 
typed in a precision, expanded vertical 
layout. Each equation line is typed 
separately, and the operator instructs the 
system how far to space down for the next 
line in increments as fine as 1 / 48 of an inch. 
Unlimited numbers of superscripts and 
subscripts are allowed. 

The new scientific system is com- 
pletely compatible with other Algo-2100 
systems, and is available as an upgrade to 
existing customers. 

Algorithmics, Inc., 177 Worcester 
Rd.,Wellesley, MA02181. (617)237-7226. 
CIRCLE 307 ON READER SERVICE CARD 



VOICE I/O TERMINAL 
FOR SORCERER 




i *< 



Cognivox plugs into Exidy's 
Sorcerer computer and offers a 16- 
word recognition vocabulary plus 
voice response with up to 16 words or 
phrases. Recognition accuracies of up 
to 98% are possible with cooperative 
speakers. 




Algorithmics announces a new addi- 
tion to its line of ALGO-2100 word 
processing systems that is designed to 
produce scientific manuscripts, journals, 
and reports which contain equations. 

The system is based on the standard 
ALGO-2100 but includes a special ex- 
tended character printer, system modifi- 
cations to display special characters on the 
screen, and keyboard modifications that 
allow the operator to type scientific and 
Greek characters along with regular text. 

The scientific printer is a letter-quality 
I impact device with over 45 different type 
I styles on interchangeable molded thimbles 



SIRIUS 80+ 

High performance 

Low Cost Floppy Add-ons! 




The SIRIUS SYSTEMS 80+ Series of Floppy 
Disk add-ons are designed to provide 
unmatched versatility and performance tor 
your TRS-80* . Consisting of four different 
add-ons, there is a 80+ Series Floppy Disk 
Drive to meet your needs 



COMMON CHARACTERISTICS 

■ 5ms track-to-track access time 
m Auto-Eject 

■ 180 day WARRANTY 

■ Exceptional speed stability - 1 1 /2% 

■ Single /Double Density operation 

■ Mix any or all 80 * Series on the SS 
Standard cable 



SPECIFIC CHARACTERISTICS 
The SIRIUS 80+1 -a single sided, 40 track 
Drive Offering 5 more tracks than the Radio 
Shack model, it cost $120 less Formatted 
data storage is 102K/204K Bytes Single/ 

Double Density. 

SIRIUS 80+1 $379.95 

The SIRIUS 80+2 is a dual sided, 80 track (40 
per side) Disk Drive It appears to the TRS-80* 
as TWO 40 track drives yet COST LESS THAN 
HALF THE PRICE! Even greater savings result 
since data is recorded on both sides of the 
media instead of only a single side This unit 
may require the SS Standard cable Formatted 
data storage is 204K/408K Bytes Single/Double 
Density. -.--«*»«- 

SIRIUS 80+2 $449.95 

The SIRIUS 80+3 - a single sided. 80 track 
Drive Offering 2V 3 times the storage of a 
standard Radio Shack Disk Drive, the 80 + 3 
greatly reduces the need for diskettes corre- 
spondingly Additionally, because of the in- 
creased storage and faster track-to-track 
access time, the 80 + 3 allows tremendously 



increased throughput for disk based pro- 
grams' The 80 4 3 includes SIRIUS s TRAKS- 
PATCH on diskette (for use with 96 tpi drives) 
Formatted data storage is 204K/408K Bytes 
Single/Double Density *mm*mm 

SIR1US80+3 $499.95 

The SIRIUS 80+4 -a dual sided. 160 track (80 
per side) 5 1 /4" monster! The ultimate in state- 
of-the-art 5'/4" Floppy Disk Technology, the 
80 ^ 4 is seen by the TRS-80* as two single 
sided disk drives. Thus, in terms of capacity, 
one 80 + 4 is equivalent to 4^i standard Radio 
Shack drives — at a savings of over 73% (not 
to mention diskettes!!!) (With a double den- 
sity converter the available memory is huge!) 
The 80 + 4 (a 96 tpi drive) includes TRAKS- 
PATCH on diskette and may require the SS 
Standard cable Formatted storage is 408K/ 
816K Bytes Single/Double Density _. ^_ 
SIRIUS 80+4 $649.95 

All 80 + Series Floppy Disk add-ons operate at 
5ms track-to-track but are Expansion Interface 
limited to 12ms for the TRS-80- 

* TRS-80(c of Tandy Corp. 

ACCESSORIES 

SS Standard 2 Drive Cable $29.95 

NEWD0S 80 Sophisticated Operating 
System lor the TRS-80* trom Apparat 

$149.95 



Save up to 10% with these SIRIUS Packages! 

$624.95 

$749.95 

$1080.95 

$1349.95 



NEWDOS/80.SIRIUS80 + 3. and Two Drive Cable 
NEWD0S/80, SIRIUS 80 + 4, and Two Drive Cable 
NEWDOS/80, Two (2) SIRIUS 80 + 3's, Two Drive Cable 
NEWDOS/80, Two (2) SIRIUS 80 + 4's, Two Drive Cable 



MPI 51/52 & 91/92 

STATE-OF-THE-ART 
DISK DRIVES 

■ Fast! 5ms track-to-track access 
M Exclusive Pulley-Band Design 

■ Unique Door I Ejector Mechanism 
m Reliable 11 /2% Speed Stability 

■ Single/ Double Density Operation 
m Industry/ ANSI Standard Interface 

MPI 51 (Single Head/40 tracks) 
125K/250K Bytes Single/Double Density* • 

$259.95 
MPI52 (Dual Head/80 tracks (40/side)) 
250K/500K Bytes Single/Double Density * 

$349.95 

MPI 91 (Single Head/80 tracks) 
250K/500K Bytes Single/Double Density* • 

$399.95 
MPI 92 (Dual Head/160 tracks (80/side)) 
500K/1000K Bytes Single/Double Density* * 

$524.95 

MPI Technical Manual $6.95 

* * Unformatted data storage 



OUME 
DataTrak 8 

8" Disk Drive 

DOUBLE SIDED! 
DOUBLE DENSITY! 



$574 



95 




High performance Double Sided Disk 8" Disk 
Drive ■ Single or Double Density ■ Door Lock 
and Write Protect INCLUDED! ■ Negative DC 
Voltage not required ■ Low Power Operation 

■ FAST! 3ms track-to-track access 
m Low friction and minimum wear 

■ Superior Head Load Dynamics 

OUME DataTrak 8 $574.95 

(2/S549 ea) 

QUME Technical Manual $6.95 

Connector Set #3 (AC, DC, & Card Edge) 

$10.95 
Connector Set #4 (AC and DC) . $2.95 



TFORTH ! -what it 
has to offer YOU! 

TFORTH is a procedural FORTH type language 
which specifies a process rather than a desired 
result Designed to run on the TRS-80". 
TFORTH is a very powerful tool by itself or 
used in conjunction with Assembly Program- 
ming A rich set of WORDS come with TFORTH 
and many features considered as "extra with 
other FORTH languages are standard with 
TFORTH These features include 

■ Advanced Math Package 

■ Line Editor 

■ Macro Assembler 

■ Re-Entrant Code 

■ Super Graphics Capabilities 

■ Sophisticated User Functions 

■ 140 Page User s Manual 

■ Virtual memory 

■ Interpreter 
m Compiler 

■ Produces CMD Files 

■ Expandable 

■ And many, many other features 

TFORTH from SIRIUS comes on diskette com- 
plete for the TRS-80" with as little as 16K of 
memory and a single Disk Drive 
TFORTH $129.95 



s„s ^ 

SYSTEMS ^^ 

7528 Oak Ridge Highway 
Knoxville. Tennessee 37921 



TO ORDER CALL (615) 693-6583 

Phone Orders Accepted 9AM-7PM (EST) Mon-Fri 

We accept MC, VISA, AE, COD (requires Certified Check. Cashier s Check 
or Cash) and Checks (personal checks require 14 days to clear) SHIPPING 
AND HANDLING: $7.00 per Floppy Disk Drive or 80 • Module ■ 5°o for other 
items (any excess will be refunded) ■ Foreign Orders add 10°o for Shipping 
& Handling. Payment in US. currency ■ Tennessee residents add 6°o Sales 
Tax ■ VOLUME DISCOUNTS AVAILABLE 



CIRCLE 236 ON READER SERVICE CARD 



NOVEMBER 1980 



195 



Software available includes 
Voicetrap, a voice operated video 
game and Vothello, a voice input 
version of the popular game Othello. 
A talking calculator program allows 
the Sorcerer to be used as a four 
function calculator without looking 
at the CRT screen, and a vocal 
memory dump program can read its 
memory out loud in Hexadecimal 
format. $149. 

Voicetek, P.O. Box 388, Goleta, 
CA 93017. 

CIRCLE 308 ON READER SERVICE CARD 

COLOR GRAPHICS PRINTER 

The PrintaColor IS8001 is a color 
printer terminal, with an auxiliary com- 
puter within the terminal itself. It consists 
of a three-color ink jet print head that is 
capable of giving graphic output, and 
mternal electronic circuitry which includes 



SAVE MORE THAN 20% 1 
NORTH STAR INTERTUBE MICROTEK 
Z EN I TH RCA-COSM AC I TH ACA 
THINKER TOYS GODBOUT SUPERBRAIN 
THE SMARTEST COMPUTERS AT THE SMARTEST PRICE 
HORIZON-1-32K-DOUBLE DEN ASSM fc TESTED $1994 
HORIZON-2-32K-DOUBLE DEN ASSM & TESTED 2299 
2 NORTH STAR SOFTWARE DISKS w/HORIZON FREE 



NORTHWORD $ 299 
INFOMANAGER 369 
HRZ-64Q+HARDDISK 7199 
NS HARD DISK 18M 3939 
NORTH STAR BASIC FREE 
ITHACA COMPUTER 2695 
8086 CPU 16 BIT 556 
MEAS 64K RAM ASM. 599 
GODBOUT 16K STAT 285 
DISCUS/2D + CP/M 975 
2D ADD DRIVE 650 
TARBELL CONTROLER 295 
INTERTUBE II 725 
SUPERBRAIN 2395 
ZENITH Z-19 A 6 T 739 
HEATH Z-89 48K 2495 
ANADEX 9500-1 1389 
NEC PRINTER 2799 
TEXTWRITER III 112 
PDS Z-80 ASSEMBLER 89 
EZ-80 Z-80 TUTOR 25 
ECOSOFT ACCOUNTNG 315 
BOX OF DISKETTES 29 



MAILMANAGER 239 
GENERALEDGER 799 
HRZ-2-32K-Q ASM 2699 
NS PASCAL ON DISK 190 
COLOR I ! PHONE 

ITHACA RAM 64K 845 
SSM Z80 CPU KIT 221 
SSM VIDEO BRD VB3 412 
SUPERRAM 32K 580 
SUPERRAM 16K 290 
2+2 ADD DRIVE 975 
DISCUS/2+2 1259 
HARD DISK 26 Mb 3995 
SUPERBRAIN QUAD 2995 
ZENITH H-ll 2995 
MICROTEK PRINTER 675 
ANADEX 8000 865 
SECRETARY WORD PRO 11 
GOFAST SPEEDBASIC 71 
NS BASIC COMPILER ?? 
EZ-CODE IN ENGLISH 71 
WORDSTAR 325 

BASIC DEBUGGER 89 



Which Computers are BEST? BROCHURE. ..... .FREE 

ORDER 2 or more COMPUTERS BIGGER DISCOUNTS 

WE WILL BEAT OUR COMPETITION'S PRICE 
FACTORY ASSEMBLED 6 FACTORY WARRANTY 
AMERICAN SQUARE COMPUTERS 
KIVETT DR * JAMESTOWN, NC 27282 * 919-889-4577 

CIRCLE 105 ON READER SERVICE CARD 



COMPUCOLOR 
USERS! 

BASIC Training for Compucolor Com- 
puters by Joseph J. Charles 200 pp. 
(1980) (1.5 lbs.) $14 95 

An introduction to statements, func- 
tions, graphics, files, FCS. 

". . . an excellent book . . . belongs 
alongside every Compucolor com- 
puter within easy reach. " 

Reviewed by W. Rust, Personal 

Computing June 1980 



Page Mode/Plot Mode Charts. Layout 

forms for graphics and output. 

Pad #101 50 sheets (12 oz.) . . . $3.50 

Satisfaction Guaranteed. Surface 
postage included. Please remit pay- 
ment. 

Joseph J. Charles 

130 Sherwood Dr., 

P.O. Box 750, Dept. D, 

Hilton N.Y. 14468 

CIRCLE 121 ON READER SERVICE CARD 




the computer. The computer within the 
terminal enables the unit to interface 
efficiently with the host computer, so that 
the unit may operate with minimal burden 
on the host computer's processing 
capacity. 

The printing head has 1 2 ink nozzles 
and is capable of printing any of seven 
colors. Each of the ink colors has 4 nozzles, 
and the color ink jet head has a resolution 



HEWLETT- PACKARD'S HP-41C. 
A CALCULATOR. A SYSTEM. 
A WHOLE NEW STANDARD. 



The new HP-4IC(rom 
Hewlett-Packard is a 
powerful programmable 
calculator that features 
an LCD display with 
alphanumeric capability. 
63 registers ol data 
storage or up to 400 lines 
of program memory — 
expandable to 3I<* registers 
or up to 2.000 program 
lines, up to A levels of sub- 
routines. 10 condi- 
tionals and 56 internal 
flags, specific loop 
control, indirect address- 
ing, local and global 
branching. Continuous 
Memory. RPN logic 

And when you need them Memory 
Modules — plug-in modules for 
storing programs and data, an "extra 
smart Card Reader, a Printer that 
prints upper and lower case alpha 

^^ plus special char- 

^|<V| aclers and docs high 

^^B resolution plot- 

^^fe ting, the Wand to 
input programs in 
bar code form 
(available early 
1980). Application 




Modules — prepro- 
grammed, plug-in modules 
that give solutions to a 
wide range of problems 
The HP-4IC lets vou 
reassign any standard 
function, any programs 
you've written, or pro- 
grams provided in the 
Application Modules — to 
any keyboard location 
you want And of course 
Hewlett-Packard backs 
the HP-4IC with total soft- 
ware support including 
an Owner's Manual and 
thousands of programs 
in the HP-4IC Applica- 
tions Pacs. Solutions Books, and the 
HP Users' Library 

Experience this remarkable instru- 
ment The new HP-4IC from Hewlett 
Packard A calculator A system A 
whole new standard 



♦ • 




M*nw.n Module 



1 > ThcF>i»i*t 




White Plains Mall. 

White Plains. N.Y. 
(9M)WHY-0ATA. 



200 Hamilton Ave 
10601 



CIRCLE 126 ON READER SERVICE CARD 



WHY PAY CUSTOM PRICES??? 

SMALL QUANTITY 

STOCK CONTINUOUS 



FORMS 



•CHECKS 
• INVOICES 
•STATEMENTS 
• SPEED-O-GRAMS 
•BILLS OF LADING 
•PURCHASE ORDERS 

IMPRINTING A VAILABLE 

STOCK PRINTOUT PAPER 
STOCK CONTINUOUS LABELS 

Call or Write for Prices & Samples 

DiSCOUHT DA1A FOftMS, JMC. 

407 EISEflHOUJER LROE SOUTH 
LDfTlBflRD, ILLinOIS 60K8 
(312)629-6850 
CIRCLE 173 ON READER SERVICE CARD 



PPIF 



of I00 dots per inch horizontally ana 7 
vertically. $6000. 

PrintaColor Corporation, Norcross, 
GA. CIRCLE 309 ON READER SERVICE CARD 



LOAD 



TRS-80 

AT HIGH SPEED 




Personal Micro Computers, Inc. has 
announced a device to input pre-recorded 
programs into TRS-80 Level II computers 
at 16 times normal speed. Standard 
cassettes can now be loaded at 8000 baud 
using a modified CTR-4 1 recorder and the 
Fastload Cassette Interface. 



TM 



For Apple^-TRS-80— Super Brain 
and others using 4116 

RAM RIOT! 

Mostek 

as low as st>\Js7* v/O 



Guaranteed 200ns/ 55 °c RAM 

1-5 sets 49.95each 

6-10 44.95 each 

11 and up 39.95 each 



Berliner Computer Center 

102 Jericho Tpke., 

New Hyde Park, NY 1 1 040 

(516)775-4700 

Add $2.50 shipping /handling charges. No 
C.O.D.'s N.Y.S. residents add applicable sales 
tax. Check or money orders only. 



CIRCLE 115QN READER SERVICE CARD 



STARFIGHT...a two-player dogfight. 

(machine level, req. 

16K) $9.95 

TV TYPER.. .turns your Apple into a 

TVT. (Applesoft ROM, 

req. 48K) $19.95 

Sand to: Bill Hlndortf 

P.O. Box 404 
Qlen Riddle. PA 19037 



CIRCLE 201 ON READER SERVICE CARD 



r 
i 



«* 



# 



L 



Creative 

Computing 

Catalogs 

Books Circle 350 
Software Circle 300 



J 



196 



CREATIVE COMPUTING 



Any cassette program previously 
"saved" at normal speed can be loaded at 
high speed. Fastload is also capable of 
searching at high speed for Basic programs 
by a single character designation or for 
systems programs by a name of up to six 
characters in length. $188. 

Personal Microcomputers, Inc., 475 
Ellis St., Mountain View, CA 94043. 
CIRCLE 310 ON READER SERVICE CARD 



CHESS PRINTER 




Fidelity Electronics, Ltd. has intro- 
duced the Fidelity Challenger Printer. 
Intended to be a companion for the Voice 
Sensory Chess Challenger, the Challenger 
Printer records and numbers both black 
and white moves on a single line. 

Utilizing standard, commercially 
available 2 l A" thermal paper, the Chal- 
lenger Printer displays current board 
positions by printing graphic display of 
black and white pieces in their actual 
locations. 

Fidelity Electronics, Ltd., 8800 NW 
86th St., Miami, FL 33178. 

CIRCLE 311 ON READER SERVICE CARD 



MUSIC & GRAPHICS 



GRAPHIC TERMINAL 
FOR NORTHSTAR 

Sigma Computers announces the 
1042S high resolution, high performance 
graphics terminal for North Star, which 
features a 1 5-inch display and memory 
mapped I/O. The device employs video 
raster scan technology, constructing 
graphic images from 640 x 800 dot matrix 
covering a 7.5" x 9" CRT surface and 
backed up by a 65K bit map display 
memory. 

The 1042S has been designed to plug 
into the S-100 bus and, by virtue of a 
breakthrough in display memory map- 
ping, provides memory mapped I/O. 
Retail price is $4,500. including CRT 
monitor, Controller, and Display memory 
on 2 printed circuit boards with S-100 
plugs and attractive desk-top packaging. 
Sigma Information Systems USA, 
Inc., 556 Trapelo Rd., Belmont, MA 
02178. (617)484-2063. 

CIRCLE 312 ON READER SERVICE CARD 



I 



GRAPHICS FOR TX-80 

Graftrax, a high-resolution, bit plot 
graphics capability for the Epson TX-80 



dot matrix printer, has been introduced by 
Epson America, Inc. 

According to the company, when the 
bit plot mode is invoked, each bit arriving 
at the parallel interface individually 




controls one of seven print wires. The 
timing is so arranged that each seven-bit 
word causes the head to print at one dot 
position for a total of 480 dots per line. No 
buffer is used in the printer. 

Utilizing a PROM, GRAFTRAX 
also enables the TX-80 to perform 
programmable U.F.H. (Universal Forms 
Handling) functions. The length of a line 
feed is software definable in 255 steps of 
.007" each. 

Epson America, Inc., 23844 Haw- 
thorne Blvd., Torrance, CA 90505. (2 13) 
378-2220. 

CIRCLE 313QN READER SERVICE CARD 




SOFTWARE 



with new items 

PS.-Wte want to be your software source. Give us the opportunity to beat any nationally advertised price! 



DISK 

WITH 

MANUAL 



/ 



MANUAL 
ONLY 



CP/M 

OSBORNE n 

General Ledger # $ 59/S20 

Acct Rec/Acct Pay#. . $ 59/S20 

Payroll w/Cost# $ 59/S20 

Buy 2 get 1 free $1 18/$57 

All 3 & CBASIC2 $199/$71 

DIGITIAL RESEARCH® 
CP/M* 2.2 Northstar. . $149/$25 
CP/M" 2.2 Cromemco. $189/$25 
CP/M* (other versions). Call 

PL/I^80 Call 

Mac $ 85/$15 

Sid $ 86/$15 

Z-Sid $ 95/$15 

Tex $ 70/S15 

Despool $ 50/$10 

MICROSOFT 

Basic-80 $289/$30 

Basic Compiler $324/$30 

Fortran-80 $384/$30 

Cobal-80 $594/$30 

Mu Math $224/$30 

MuLisp $169/$25 

MICRO DATA BASE SYSTEMS 

HDBS $250/$40 

MDBS $750/$40 

Other Call 

S.O.FT.WA.R.E. 
Microtax** 
Federal individual .... 
Federal corporate 

State individual 

C.P.A. Plus 

Client Write-up 

Time billing 

Business Plust 

General Ledger 

Accounts Receivable 

Accounts Payable 

Payroll 

All 4 



CP/M users: specify disk systems and formats. Most formats available. 



COMPUTER PATHWAYS 

Pearl (level 1)# $ 99/S25 

Pearl (level 2)# $299/$25 

Pearl (level 3)# $549/$25 

MICROPRO 

Word-Star (Ver. 2.0). . $349/$40 
Word-Star 

/Mail-Merge $489/$65 

DataStar $279/$35 

Word-Master $1 19/S25 

SuperSortl $199/$25 

SuperSort II $169/$25 

SuperSort III $119/$25 



PEACHTREE*H 

General Ledger^ 

Accts Receivable t 

Accts Payable* 

Payroll* 

Inventory* 

Property Mgt* 

C.P.A Client Write-up*. 
Mailing Address* 



$449/$45 
$449/$45 
$449/$45 
$449/$45 
$499/$45 
$899/$45 
$899/ $45 
$399/$45 



$749/$50 
$249/$25 
$249/$25 

$995/$95 
$995/$95 

$ 79/$25 
$ 79/$25 
$ 79/$25 
$ 79/$25 
. $269/$99 

SUPERSOFT 

Forth (8080 or Z80)tl. . $129/$25 

Diagnostic I $ 49/$20 

Other disk software. . . less 10% 
SOFTWARE WORKS 

Adapt $69 

Ratfor $86 



STRUCTURED SYSTEMS 

General Ledger # $747/$25 

Accts Receivable #. . . . $747/$25 

Accts Payable* $747/$25 

Payroll* $747/$25 

Inventory Control*. . . $447/$25 

Analyst* $197/$20 

Letteright* $167/$20 

NAD* $ 87/$20 

QSORT $ 87/$20 

GRAHAM-DORIAN U 

Most packages $699/$40 

MICRO-AP 

Selector II I-C2* $269/$20 

Selector IV* $469/$35 

S-Basic Compiler $229/$25 

WHITESMITHS 

"C Compiler* $6O0/$30 

Pascal (incl "CI* $750/$45 

EIDOS SYSTEMS 

Kiss $299/$25 

Kbasic $529/$50 



#- 



OTHER GOODIES 

Tiny "C" $ 69/$40 

CBASIC (Ver 2.06). . . $ 89/$15 

Pascal/Z (Ver 3) $369/$35 

Pascal/MT (Ver 3). . . . $224/$30 

Pascal/M $149/$20 

Pascal/UCSD $299/$25 

FMS-80 Call 

CBS $279/$45 

T.I M* $369/$45 

Vsort I $159/$25 

String/80 $ 84/$20 

Whatsit? $149/$25 

Postmaster $139/$20 

Textwriterlll $111/$20 

Magic Wand $299/$45 

Spell Binder $349/$45 

Electric Pencil II less 15% 

CPAids less 12% 

Vulcan DBMS $469/$30 

Neveda Cobol $89/$25 

APPLE II® 

MICROSOFT 

Softcard(CP/M) $292 

PERSONAL SOFTWARE 

Visicalc" $122 

CCA Data Mgr $ 84 

Desktop/Plan $ 84 

PEACHTREE*fl 

General Ledger* $224/$45 

Accts Receivable* . $224/$45 

Accts Payable* $224/$45 

Payroll* $224/$45 

Inventory* $224/$45 

MUSE 

Super-Text $ 84 

Other disk software . , less 10% 

Whatsit? $129 

Apple PIE $ 69 

TRS-80 MODEL II 

CP/M 2.2 $149 

Electric Pencil II less 15% 

TRS-80 MODEL I 

CP/M 1.4 $129 

CCA Data Mgr $ 68 

Requires CBASIC-2 ®-Mfgs Trademark 



• -Special Bonus with order {-Requires microsoft BASIC 11-Supplied in source code 

Don't see it— CALL! Other software requirements— Call 

"LIGHTNIN" service available! Just call and ask Diana. 

ORDERS ONLY-CALL TOLL FREE VISA • MASTERCHARGE 
1-800-854-2003 ext. 823 • Calif. 1-800-522-1500 ext. 823 

Overseas -add $10 dIus additional postage • Add $2.50 postage and handling per each item • California 
resSs add 6% sates tax • Allow 2 weeks on checks. COD. ok • Prices subject to change without notice 

All items subject to availability • 

Forinformationwriteorcal. THE DISCOUNT SOFTWARE GROUP 

1610 Argyle Ave., Bldg. T02 • Los Angeles, CA 90028 • (213) 665-8280 



NOVEMBER 1980 



197 



CIRCLE 182 ON READER SERVICE CARD 



r 



GRAPHIC TABLET 

The Kurta Corporation announces a 
graphic tablet designed for small com- 
puters. 







Kurta Graphic Tablets are compatible 
with standard 7" x 9" display screens. The 
output of the tablet directly matches the 
capabilities of the computer, minimizing 
both interface and software requirements. 
Resolution is 100/200 points per inch, and 
the conversion rate is 100 coordinate pairs 
per second. 

Kurta Corporation, 206 S. River Dr., 
Tempe, AZ 85281. (602) 968-8709. 
CIRCLE 314 ON READER SERVICE CARD 

IMPROVED GRAPHICS FOR OSI 

Hobbyware has developed a simple, 
plug-in, mod to quadruple the vertical 



resolution and double the horizontal 
resolution of any OSI computer. 

The credit-card sized board is in- 
stalled in place of a chip which is then 
installed into the mod board. One wire 
must then be connected as an enable line. 
With a simple timing adjustment, the 
computer is ready to go with a complete 
graphics capability of 128 x 128. 

Hobbyware, 838 Parkside, Elmhurst, 
IL 60126. 

CIRCLE 3150N READER SERVICE CARD 

DIGITAL GRAPHICS PLOTTER 




Strobe Inc. has introduced a high 
performance digital graphics plotter. The 
Strobe Model 1 00 is a drum type plotter 
utilizing four-phase stepping motors to 
provide drum rotation and linear pen 
motion. 

Its step-size, the smallest motion the 
plotter can make, is .004 inch along each 
axis. 

Strobe provides assembly language 
vector software support for 8080/8085, 
Z80, and 6502 microprocessors. 



The Model 100 can be interfaced to 
any computer through two parallel 8-bit 
output ports and one 8-bit input port. 
Optional interfaces for theTRS-80, Apple 
II, CBM PET, and S-100 bus computers 
are available. Also offered is a plot 
applications software package that runs 
with most versions of Basic and Fortran. 
$680. 

Strobe Inc., 897-5A Independence 
Ave., Mountain View, CA 94043. (4 1 5) 
969-5130. 

CIRCLE 3160N READER SERVICE CARD 



DIGITIZER FOR APPLE 



I 




The DT-l l A digitizer for the Apple II 
version of the Hi Pad digitizer provides a 
slot interface card for the Apple II, a 
floppy based software package, menu 
overlay, and stylus. 

Functions supported by the software 



PROGRAMMED MUSIC FOR ALPS 
APPLE MUSIC SYNTHESIZER 

(SEE THE ARTICLE ON THIS AMAZING MUSIC CARD IN THIS ISSUE.) 



ALBUM 

24 CHRISTMAS SONGS 

Just in time for Xmas in July! 

ALL FOR 2 OR 3 SYNTHESIZERS 
HALLELUJAH CHORUS 
THE 12 DAYS OF CHRISTMAS 
JINGLE BELLS 

WHAT CHILD IS THIS? 

(Greensleeves) 

AND MORE! 24 SONGS IN ALL 
$14.95 disk or tape 



ALBUM 1 

• 8 SONGS FOR 1, 2, OR 3 SYNTHESIZERS 

• 8 SONGS FOR 2 OR 3 SYNTHESIZERS 

• THE ENTERTAINER 

from "The Sting" 

• PROMENADE 

from "Pictures at an Exhibition" 

• THE SURPRISE SYMPHONY 

By Haydn, 2nd movement 

• RONDO ALLA TURKA 

• AND MORE! 16 SONGS IN ALL 
•$14.95 disk or tape 



ALBUM 3 



• 10 SONGS FOR 2 OR 3 SYNTHESIZERS 

• 5 SONGS FOR 3 SYNTHESIZERS 

• BUGLER'S HOLIDAY 

• SYNCOPATED CLOCK 
•HOW HIGH THE MOON 

• FOUR BROTHERS 

• ALIEN CHOPPER DEATH 

• AND MORE! 15 SONGS IN ALL 

• $14.95 disk or tape 




ALF PRODUCTS 



1448 ESTES 



DEALER 



DENVER, CO 80215 



198 



CREATIVE COMPUTING 



THE ONLY MAGAZINE BY AND FOR S-100 SYSTEM USERS! 



s-100 



At lost there is o magazine written exclusively for S-100 system users. No 
other publication is devoted to supporting S-100 system users. No longer 
will you have to hunt through other magazines for on occasional S - 1 P°'„ 
CP7M* or PASCAL article. Now find it all in one publication. Find it in S-100 
MICROSYSTEMS. 

Every issue of S-100 MICROSYSTEMS brings you the latest in the S-100 
world. Articles on applications, tutorials, software development letters to 
the editor, newsletter columns, book reviews, new products, etc. Material 
to keep you on top of the ever changing microcomputer scene. 



.100 



VkW* 



*»P 



SOFTWARE 

CP/M* 

Assembler 

BASIC 

PASCAL 

applications 

and lots more 



SYSTEMS 

Cromemco 
Intersystems 

North Star 

IMSAI 

SOL 

and lots more 



•TMK 
Digital 
Research 



HARDWARE 

8 bit & 1 6 bit CPUs 

interfacing 

hardware mods 

bulletin board systems 

multiprocessors 

and lots more 



J\CS> 



N/O- 



tfeSP-' ■>""£■ 






'°°*' >'-*, 






Edited by Sol Libes 
Published every other month 



USA 

□ $23.00 



□ $65.00 

□ $45.00 

□ $23.50 



Canada, Mexico Other Foreign (Air) 

THREE YEARS (18 issues) 
□ $32.00 
TWO YEARS (12 issues) 

□ $17.00 □ $23.00 

ONE YEAR (6 issues) 

□ $9.50 n$12.50 

□ New □ Renewal 

□ Payment Enclosed 

□ Visa 

□ MasterCard 

□ American Express 



Signature 
Card No. 



Expiration date 

□ Please bill me ($1.00 billing fee will be added; foreign 
orders must be prepaid) 



S-100 MICROSYSTEMS 

P.O. Box789-M, Morristown, NJ 07960 



s-100 



MICROSYSTEMS 



ORDER FORM 



Name 



Address 



City 



State 



Zip 



BACK ISSUES 



□ 1-1 Jan/Feb 1980 $5.00 

□ 1-2 Mar/Apr 1980 $2.50 

□ 1-3 May/Jun 1980 $2.50 



□ 1-4 Jul/Aug 1980 $2.50 

□ 1-5 Sep/Oct 1980 $2.50 

□ 1-6 Nov/Dec 1980 $2.50 



Postpaid in USA; add $1.00 per issue foreign postage. Subscriptions 
start the month following receipt of order. Subscriptions cannot start 
with earlier issues. 



CIRCLE 251 ON READER SERVICE CARD 



NOVEMBER 1980 



199 



'include draw, line, area, background, pen 
color, separate, catalog, save, load, shape, 
etc. A plastic overlay that serves as a menu 
allows the user a selection of these 
functions and gives the user the oppor- 
tunity to generate a wide variety of creative 
color graphics. 

Besides the interface and software, the 
DT-11A offers slot independence, Basic 
and Pascal compatibility, assembler driver 
code, user controls, and optional cursor. 
The DT-1 1 A/ Apple II system requires a 
48K system and the Applesoft firmware 
card. $795. 

Houston Instrument, One Houston 
Square, Austin, TX 78753. (512)837-2820. 
CIRCLE 317 ON READER SERVICE CARD 



PERIPHERALS 



COMMUNICATIONS LINK 

Digicom Data Products, Inc. has 
introduced an intelligent communications 
controller designed for interconnection 
between various terminals and modem 
devices. 




d k 



finally!!! 




A DIRECTORY OF 

EDUCATIONAL 

SOFTWARE 

SCHOOL 
MICROWARE 



Over 500 programs/packages for 

TRS-80, PET, APPLE 

all grades, most subjects 

FIRST EDITION SEPT. 1980 

Price $20.00 per year 

($15.00 before NOV. 15th) 

includes full directory plus 3 updates 

write 

Dresden Associates 

P.O. Box 246 Dresden, Maine 04342 



CIRCLE 164 ON READER SERVICE CARD 



Called Digilink," it offers text editing 
through an assigned terminal port, 
interactive communications through a 
modem control port and data collection 
via the printer control port. When 
available, the optional firmware features 
will provide async/sync conversion, code 
conversion, serial to parallel connection, 
IEEE-488 interface plus various terminal 
protocol emulation packages. 

Depending on user requirements and 
configuration the Digilink can be used in 
applications ranging from off-line text 
editing, limited word processing, station to 
station electronic mail, terminal data 
concentration and dual station multi- 
plexor. $995. 

Digicom Data Products, Inc., 1440 

Knoll Circle, San Jose, CA 95 ll 2. (408) 

279-871 1. 

CIRCLE 318 ON READER SERVICE CARD 

RS-232C INTERFACE 
FOR INTERACT 

Micro Video has released an RS-232C 
peripheral interface for the Interact 
computer, along with printer and com- 
munications software. 

The interface is equipped with a dual 
port that has handshaking and send/ 
receive capabilities for driving any RS- 
232-compatible device. All I/O parameters 
are software-selectable from Basic and 
machine code. 




Huntington 
Computing 

ALL PROGRAMS LISTED BELOW ARE ON DISK 

The Wizzard and the Princess -- HI-RES Adv. ttl 

from On-Line. Over 100 rooms. $32.95 now $28.00 

The Prisioner--New from Edu-Ware. Inspired by the 

British TV series. Hurry. $29-95 now $25.45 

|Paddle Graphics $39-95 now $33.95 

ablet Graphics $^9.95 now $42.50 

Asteroids in Space $19-95 now $16-95 

Touch Typing Tutor$20-95 now $17.80 

Menu Cookbook $20-95 now $ 17.80 

Sahara Warriors $7-95 now $6.75 

The Temple of Apshai $29-95 now $25-^5 

The Datestones of Ryn $19.95 now $16.95 

Morioc's Tower $19-95 now $16-96 

Rescue at Rigel $24.95 now $21.20 

Fracas $24.95 now $21.20 

Battleship Commander $19-95 now $16.95 

Fastgammon $24.95 now $21.20 

Dungeon Campaign $17-50 now $14.85 

Wilderness Campaign $20.00 now $17.00 

Dungeon/Wilderness one disk$32.50 now $27.60 

Higher Graphics $25-00 now $21.25 

Higher Text $35-00 now $29-75 

Screen Machine $19-95 now $16.95 

Computer Bismark $59-95 now $50.95 

Don Budge's Trilogy $29-95 now $25.45 

Master Catalog (Programma) $29.95 now$26.95 

Compu-Read $24.95 now $21.20 

Compu-Math I: Fractions $39-95 now $33-95 

Three Mile Island $39-95 now $33-95 

Super Text $99-95 now $85-00 

Magic Window $99-95 now $85-00 

Desktop Plan $99-95 now $85-00 

CCA Data Management $99-95 now $85.00 SOfTWAR 

VisiCalc $150.00 now $119.00 

"Mystery House" HI-RES Ad. $24.95 now $21.20 

Gomoku $14.95 now $12.70 

Acanthopterygian Fortune-telling $15.00 
Horriblescope $15.00 



We take MasterCharge or VISA (include 
card # and expiration date), checks, 
money orders. No cash or C.O.D. Calif, 
residents add 6% tax. Include $1.50 for 
postage and handling. Mail to: 
HUNTINGTON COMPUTING, Dept. CC-11 
2020 Charles, Corcoran, CA 93212 
•lal Jjn your^jrder (2091 992-54l 1 -X- 



flappkz* 



^SS 



I Free 

|C«1fcl<£ 








The RS-232 Pack includes Microsoft 
Basic with printer access commands and a 
Basic editor with automatic line number- 
ing, resequencing, string substitution, 
appending, and other useful functions. 
Communications software is available 
separately. $129.95. 

Micro Video, 204 E. Washington, 
Ann Arbor, MI 48104. 

CIRCLE 3190N READER SERVICE CARD 

INTELLIGENT MODEMS 




Business Computer Corporation has 
introduced Bizcomp Model 1 030 and 1031 
Intelligent Modems. 



If you're serious 

about the stock market, 

you need 

Tickertec™ 




CIRCLE 144 ON READER SERVICE CAR[ 

200 



Watch 48 to 400 of your favorite 
stocks without a 15 minute delay. 

Tickertec™ is a computer program that dis- 
plays the NYSE or AMEX tickertape on your 
TRS-80™ Model I or both exchanges as an 
option on the Model II. You see every trade 
as it is reported by the exchange and track 
the last ten trades, tickertape reported 
volume, and high and low limits on the 
stocks you are watching. Tickertec pro- 
gram prices start at $1,000.00 with many 
optional features available including hard 
copy and portfolio management systems. 
Programs may be purchased for cash (i.e., 
hard dollars) or payment can be arranged 
in the form of discounted brokerage com- 
missions (i.e., Soft Dollar Software™). Ex- 
change fees are exUa. Call for FREE bro- 
chure TOLL-FREE at (800) 223-6642; in New 
York call (212) 687-0705; or circle the 
reader service number. 

MaxUle& 

Company Inc. 

6 East 43rd Street, N.Y., N.Y. 10017 



CIRCLE 244 ON READER SERVICE CARD 

CREATIVE COMPUTING 



The 1030 Series combines a low error 
rate modem with an automatic calling unit 
and custom BIZ-080 microcomputer in a 
compact FCC-registered unit with auto- 
answer, auto-dial and auto-repeat dial 
features. 

Interfacing to RS232-equipped com- 
puters, terminals and word processors 
requires only a 3-wire data cable. A current 
loop interface is also standard. $395. 

The 1031 adds command-selectable 
dial pulse or tone dialing, and self-test. 

$495. 

Business Computer Corporation, 
P.O. Box 7498, Menlo Park, CA 94025. 
(415) 854-5434. 

CIRCLE 320 ON READER SERVICE CARD 



IEEE-488 TO PARALLEL 
INTERFACE FOR PET 

LemData Products introduces the 
P.I.E.-C; a full featured, IEEE-488 to 
parallel interface for the PET/CBM 
computers. 

Because the P.I.E.-C has parallel 
output with two handshaking lines it is 
compatible with the Centronics printers, 
NEC Spinwriter, Anderson-Jacobson 
AJ841, Integral Data System's "Paper 
I Tiger," Anadex 8000 and 9000 type 
I printers, as well as other parallel-input 
I ASCII printers. 




The P.I.E.-C can respond to any 
IEEE-488 primary address by setting its 
DIP switch. The conversion of non- 
standard PET/CBM codes to true ASCII 
codes is also switch selectable. $1 19.95. 

LemData Products, P.O. Box 1080, 

Columbia, MD 21044. (301) 730-3257. 
CIRCLE 321 ON READER SERVICE CARD 

VENDOR 
LITERATURE 

DIRECTORY OF 
EDUCATIONAL SOFTWARE 

Queue's Catalogue #3 is a directory 
of educational software available for 
Apple, Pet, TRS-80 and Atari. Programs 
from over 40 educational software pub- 
lishers are grouped by computer, subject 
matter and grade level, and described. 



All the programs can be ordered 

directly through Queue. $8.95. 

Queue, 5 Chapel Hill Dr., Fairfield, 

CT 06432. 

CIRCLE 322 ON READER SERVICE CARD 

BOOKS AND 
BOOKLETS 

TRS-80 SOFTWARE CATALOG 

Racet Computes announces a 24-page 
catalog of software for the TRS-80. 
Included are descriptions of all new 
products including: Hard/Soft Disk 
System, hard disk drive interface software 
for the Mod II; Spoolers; Basic Cross 
Reference Utility for the Mod II; and 
Blink, a utility for linking Basic programs 
to each other. 

Racet Computes, 702 Palmdale, 

Orange, CA 92665. (7 14) 637-5016. 
CIRCLE 323 ON READER SERVICE CARD 

BUSINESS MICROCOMPUTER 
EVALUATIONS 

MIC, a data processing publica- 
tion company, has prepared objec- 
tive evaluations of the following 12 
business microcomputers: Radio 
Shack TRS-80, Model I and II; IBM 
51 10 & 5120; Vector Graphic Systems; 






I Coi 

ant 






Combine accurate flight characteristics 
and you'll have SubLOGIC's 



the best in animation graphics 




FS1 Flight Simulator 



SubLOGIC s T80-FS1 is the smooth, realistic 
simulator that gives you a real-time, 3-D, 
out-of-t he-cock pit view of flight. 

Thanks to fast animation and accurate repre- 
sentation of flight, the non-pilot can now learn 
basic flight control, including take-offs and 
landings! And experienced pilots will recog- 
nize how thoroughly they can explore the 
aircraft's characteristics. 

Once you ve acquired flight proficiency, 
you can engage in the exciting British Ace 
3-D Aerial Battle Game included in the 
package. Destroy the enemy s fuel depot 
while evading enemy fighters. 

Computer and aviation experts call the 
T80-FS1 a marvel of modern technology. 
You'll simply call it fantastic! 



fortheTRS-80 



Special Features: 

• 3 frame-per-second flicker free 
animation 

• Maximum transfer keyboard input 

• Constant feedback cassette loader 



Hardware Requirements: 

• Radio Shack TRS-80, Level 1 or 2 

• 16K memory 

• Nothing else! 




Only 



See your dealer or order direct. For 
direct order, include $125 and specify 
UPS or first class mail. Illinois residents 
add 5% sales tax. Visa and Mastercard 
accepted. 





LOGIC 

Distribution Corp. 
BoxV, Savoy, I L 61874 
(217)359-8482 



CIRCLE 187 ON READER SERVICE CARD 



NOVEMBER 1980 



201 



Alpha Micro; Ohio Scientific; Rexon; 
North Star; Cromemco; Apple II and 
Burroughs B90. 

Each of the evaluations is an in- 
depth analysis of the computer 
product, its hardware, and software. 
The set of business evaluations is 
available for $75. 

MIC, 140 Barclay Center, Cherry 
Hill, NJ 08034. (609) 428-1020. 

CIRCLE 324 ON READER SERVICE CARD 

WORD PROCESSING REPORT 

The Small Systems Group has begun 
publication of a series of in-depth product 
evaluation reports. The first of these 
reports, entitled "Word Processing on 
Personal Computers" is now available. 

The report introduces personal 
computer word processing with sections 
on software, hardware and applications. It 
continues with general descriptions of four 
programs: Auto Scribe, Electric Pencil, 
Magic Wand and Wordstar. These are 
compared on quality of documentation, 
ease of learning, editing power and 
formatting power. $10. 

Small Systems Group, Box 5429, 
Santa Monica, CA 90405. 
CIRCLE 325 ON READER SERVICE CARD 

EDMUND SCIENTIFIC CATALOG 

9*9$ ***« pvomxtm 




Ettrouncf Scientific Catalog 



■&»■■*&!» no* *♦ ** N****. »><♦>»«« *•*** 




The Edmund Scientific Fall/ Winter 
catalog for 1980 introduces 435 science- 
related products for hobbyists and 
experimenters. 

A new section in the catalog, called 
"Products for Scientific Living" features a 
limited edition space lithograph, a com- 
puterized thermostat, a unique speech 
controller cassette player and other 
unusual items designed for contemporary 
life styles, and several new energy-saving 
products have been added to the line of 
solar products. 

Edmund Scientific Co., 7082 Edscorp 
Bldg., Barrington, NJ 08007. 
CIRCLE 326 ON READER SERVICE CARD 



CP/M SOFTWARE 
SUMMARY GUIDE 

Rainbow Associates announces the 
CP/M Software Summary Guide, a 
summary of the major software used on 
most CP/M systems. Included are sum- 
maries of the CP/M operating system, 
Microsoft Basic, CBasic, and the CP/M 
utilities Despool, MAC and TEX. 

Sixty pages long, it is designed for 
easy use. Features are organized alpha- 
betically, so the reader can find an 
explanation quickly. $3.75. 

Microsystems Book Service, P.O. 
Box 789-M, Morristown, N.J. 07960(201) 
267-4558. 

CIRCLE 327 ON READER SERVICE CARD 



NEWSLETTERS 



NEWSLETTER FOR TEACHERS 

Teaching Computer Programming is 
a monthly newsletter for instructors at 
junior high school and high school levels. 
Though there will be articles for TRS-80 
and Apple II, the content will be kept 
machine-independent whenever possible. 

Topics to be covered include pro- 
gramming assignments, quiz ideas, pro- 
gramming techniques, and uses of com- 
puters and peripherals in the classroom. 
A one-year subscription is $8. 

Craig Nansen, 1112 Glacial Dr., 
Minot, ND 58701. 

CIRCLE 328 ON READER SERVICE CARD 

EDUCATIONAL NEWSLETTER 

A monthly newsletter, Microcom- 
puters in Education, commences publica- 
tion in October. The newsletter will carry 
reviews of educational software, new 
product announcements, reports on CAI 
in the classroom, reviews of books and 
magazine articles, news of meetings, and 
industry news. 

Yearly subscriptions are $15. 

Microcomputers in Education, 5 
Chapel Hill Dr., Fairfield, CT 06432. 
CIRCLE 329 ON READER SERVICE CARD 

SINCLAIR NEWSLETTER 

Syntax ZX80, a monthly newsletter 
for Sinclair ZX80 friends and owners is 
devoted to news and reviews of ZX80 
hardware and software. 

Syntax ZX80 will also provide readers 
with forecasts of hardware and software, 
applications, and technical details for do- 
it-yourselfers, as well as a forum for users 
to share advice about programs and 
vendors. The yearly subscription rate (12 
issues) is $25. 

Ann Zevnik, Editor, The Harvard 
Group, Bolton Rd., R.D. 2, Box 457, 
Harvard, MA 01451. 
CIRCLE 330 ON READER SERVICE CARD 



DISK & TAPE 
SYSTEMS 



DOUBLE-DENSITY 
ADAPTER FOR TRS-80 




Percom announces a double- 
density disk controller adapter for the 
TRS-80. Called the Doubler, it can 
store up to 345 formatted Kbytes. 

A proprietary design allows the 
user to continue to run TRSDOS, 
NEWDOS and Percom OS-80 single- 
density programs without modifying 
either software or hardware. 

The adapter plugs into the con- 
troller chip socket of the computer 
expansion interface. $219.95. 

Percom Data Company, 211 N. 
Kirby, Garland, TX 75042. (800) 527- 
1592. 

CIRCLE 331 ON READER SERVICE CARD 



SKINNY FLOPPY 

An 8" floppy disk drive said to be 
less than one-half the height of any 
other model has been introduced by 
Micro Peripherals, Inc. 

Height is only 2Vh inches at the 
highest point. Other dimensions are 
length 12Vi inches and width 8V2 
inches. 





The new drive, only 2Vz" high, is 
available with dual heads (model 82) 
for reading/writing on both sides of 
the disk or one head (model 81) for 
single side operation. Storage ca- 
pacity is 800 Kbytes for the single- 
head model and 1,600 Kbytes for the 
dual. 

Micro Peripherals, Inc., 9754 
Deering Ave., Chatsworth, CA 9131 1. 

CIRCLE 332 ON READER SERVICE CARD 



202 



CREATIVE COMPUTING 



r 



DISK DRIVES 

FROM COMMODORE 

Commodore has introduced the 
CBM 2030 series of small, light 
weight 5V4" floppy disk drives for PET 
and CBM computers. The single drive 
model, CBM 2031, is priced at $595 
and provides 130K bytes of storage. It 
may be field upgraded to a dual drive 
version which offers 260K bytes of 
storage. 

Also available is the CBM 8060 
series of high end 8" floppy disk 
drives. The CBM 8061, priced under 
$2500, uses two single-sided drives for 
1.6 megabytes of storage; the CBM 
8062 uses two double-sided disks for 
3.2 megabytes and sells for under 
$3500. 

Commodore Business Machines, 
Inc., 3330 Scott Blvd., Santa Clara, 
CA 95051. (408)727-1130. 

CIRCLE 333 ON READER SERVICE CARD 

DISK DRIVE FOR HP-85 




I 



A flexible disk drive family that 
provides up to 1.08 Mbytes of on-line 
capacity for the HP-85 personal 
professional computer has been intro- 
duced by Hewlett-Packard. 

The HP 82900 Series drives read 
double-sided, double-density, Wa" 
disks, and can be configured to 
provide from 270 Kbytes to 1.08 
Mbytes of storage. The interface 
between the HP-85 and the disk 
drives is the HP-85 Mass Storage 
ROM. Prices range from $1300 to 
$2500. 

Hewlett-Packard Company, 1507 
Page Mill Rd., Palo Alto, CA 94304. 

CIRCLE 334 ON READER SERVICE CARD 

8" FLOPPY DISK SYSTEM 
FOR H-8 AND H-89 

Heath Company introduces an 8" 
dual-sided, dual-density floppy disk 
system. The H-47, designed for use with 
the H-8 and H-89 microcomputers, 
provides up to 2'/ 2 million bytes of 
on-line data storage, more than 12 times 
the current maximum capability. 

Featuring two 8" disk drives as 
standard equipment, the H-47 Floppy 
Disk System is fully compatible with 
current Heath 5!/ 4 " disk systems. Both 



Heath's HDOS Operating System and 
CP/ M will be supported. Each will permit 
transfer of data between 5 '//'and 8" disks. 
Heath Company, Dept 350-440, 
Benton Harbor, Ml 49022. 
CIRCLE 335 ON READER SERVICE CARD 

DISK DRIVE FOR 
TRS-80 MODEL II 

Parasitic Engineering announces that 
its Maxi-Disk 8" floppy disk drives are 
now compatible with the TRS-80 Model 
II. When used with the Model II, Maxi- 
Disk drives are functionally identical to 
Radio Shack expansion drives, but 
provide additional features at a competi- 
tive price. No software or hardware 
changes are needed. 

Maxi-Disk drives have activity lights 
to protect against errors by informing the 




'The meaning of life?' We have released that as a 

basic program, for all micro systems. It's $11-95 

at stores everywhere. Have a pleasant return 

journey. 



user when it is safe to remove diskettes. 
$845. 

Parasitic Engineering Inc., 1101 
Ninth Ave., Oakland, CA 94606. (415) 

839-2636. 

CIRCLE 336 ON READER SERVICE CARD 

8" DISK DRIVE FOR TRS-80, 
APPLE, S-100 

Matchless Systems has announced the 
MS-800, an 8" inch disk drive compatible 
with TRS-80 Models I and II, Apple II and 
S-100 systems. 

The MS-800 has a capacity of 77 
tracks, 26 sectors per track and 128 bytes 
per sector for a total of 256,256 bytes. The 
data transfer rate is 256,000 bits per 
second, and the drives are powered 
independently of the systems with which 
they are used. The price range of $995 - 
$1595 includes all hardware, software and 
documentation. 

Matchless Systems, 18444 South 

Broadway, Gardena, CA 90248. (2 1 3) 327- 

1010. 

CIRCLE 337 ON READER SERVICE CARD 

STREAMING 1/4" CARTRIDGE 
TAPE DRIVES 

Archive Corporation has announced 
a family of streaming X A" cartridge tape 
drives featuring a recording density of 
8,000 bits per inch, and operating speeds of 
30 and 90 inches per second. 








...being ye compleat 

catalogue of peripherals 

available for your PET 



On* 







£ 



Skyles 

Electric 

Works 



Skylcs Electric Works 

231 E South Whisman Road 
Mountain View, CA 94041 

CIRCLE 253 ON READER SERVICE CARD 



NOVEMBER 1980 



203 




Designated Sidewinder, the new 
drives are specifically designed for 
Winchester disk drive back-up. Utilizing 
the ANSI-standard 450-foot, !4" wide tape 
cartridge, the drives are offered in either a 
Basic or Intelligent configuration with 10 
megabyte or 20 megabyte capacities. 

Sidewinder's erase-write-read record- 
ing head operates in a 2 or 4 track format, 
the tracks being recorded serially using a 
serpentine recording technique. Prices 
range from $469 to $954. 

Archive Corporation, 3540 Cadillac 
Ave., Costa Mesa, CA 92626. 
CIRCLE 338 ON READER SERVICE CARD 

WINCHESTER DISK BACKUP 

Tape Interchange Package is an S-100 
compatible cartridge tape subsystem and 
software utility that permits transfer of 



programs and data files from a Winchester 
disk to an easy-to-handle 13.4 MB 1/4" 
tape cartridge. 

Facilitating off-premises data base 
storage and shipping, and links to the 
Winchester disk under Digital Research 
CP/M and MP/M Operating Systems. 

With a 2 min./MB backup/ restore 
rate, the Alloy Engineering TIP provides 
file-oriented backup to optimize cartridge 
tape utilization. It consists of a DS-100 
Controller, 6400 BPI cartridge tape drive, 
and rack or table mount power supply. 
Software is distributed on a single sided, 
single density 8" floppy disk in CP/M 
format. 

Alloy Engineering Company, Inc., 
Computer Products Division, 85 Speen 
St., Framingham, MA 01701. (617) 620- 
1710. 

CIRCLE 339 ON READER SERVICE CARD 




MISCELLANEOUS 



COMPUTER DESK 

Furnwood Manufacturing introduces 
a computer desk with custom fitted areas 
to hold the Apple II or Apple II Plus. The 
drawer in front is designed to hold the 
Apple Computer at a comfortable typing 



height, and an area for the disk drives is 
accessible for loading diskettes. 

The desk has a work top area of 27" 
by 48" and is built to a height of 30". 
Models are also available for the Atari and 
TRS-80. $400. 

Furnwood Manufacturing Inc., 5665 
S.W. Carman Dr., Lake Oswego, OR 
97034. (503)636-1991. 

CIRCLE 340 ON READER SERVICE CARD 



HOME CONTROL FOR TRS-80 

The Micro Commander is a software 
driven interface between the TRS-80 and 
the BSR X-10 system. It provides remote 
control for up to 256 lights and appliances 
in the home or office. 



The 

Maine 

Software 
Library 



We rent games and 
utilities for the TRS-80* at a 
fraction of their purchase 
price. 



For catalogue, check 
Reader Service. For faster 
service send S.A.S.E. to: 
777e Maine Software Library 
P.O. Box 197 
Standish, Maine 04084 



A Trade name of the Tandy Corp. 



MATH SOFTWARE 



Take an Apple™ into the classroom! Exciting 
software dramatically demonstrates concepts 
which are being taught. Math Software 
products can help to make you a better 
teacher and also provide you with better 
students! 

Taylor Series 

Function Grapher 48K 

Arithmetic of Functions 

Binomial Multiplication 

Solving Linear Systems 48K 

Graphic Integration Theory 

Midpoint & Trapezoidal Rules 

Rational Function Grapher 

Sine and Cosine Grapher 

Solids of Revolution 

Limits of Sequences 

Polar Graphing 

Software is designed for Apple II Plus or 
Apple II with Applesoft firmware. Price is 
$15 per 32K, $25 per 48K disk system pro- 
gram ($8 disk/handling fee waived for orders 
over $50). 

Free catalog. 

MATH SOFTWARE, 

1233 Blackthorn Place, 

Deerfield, IL 60015. 



The 

MICRO- 

COMM UNICA TOR 



im 



Copyright 1980 








CIRCLE 206 ON READER SERVICE CARD 



CIRCLE 219 ON READER SERVICE CARD 

204 



A new set of programs which trans- 
forms the APPLE II* or APPLE II 
PLUS* into a communications device 
for the disabled. 

No expensive peripherals; requires 
computer, single disc drive and TV. 
A single keystroke by mouthstick 
will cause an entire sentence to be 
displayed on TV — and longer mes 
sages are con true ted similarly from 
a built-in vocabulary exceeding 1,600 
words. Messages can be printed out 
as mail. All sentences are user- 
changeable, as is a 50-word personal 
vocabulary. 

VERSION A - Adult Vocabulary 
VERSION C - Child's Vocabulary 

The MICR OCOMM UNICA TOR : 
disc/backup disc/documentation 

$39.00 
Handling & Shipping — $2.75 
California residents add 6% sales tax. 
PLEASE INDICATE VERSION. 

GROVER & ASSOCIATES 

7 Mt. Lassen Drive /Suite D116 
San Rafael, California 94903 

•Apple II & Apple II Plus are trade- 
marks of APPLE COMPUTER, Inc. 

CIRCLE 220 ON READER SERVICE CARD 

CREATIVE COMPUTING 





iffiemo 

comma******* 





Because the Micro Commander is a 
direct interface to the AC power line, the 
user need not purchase the BSR Command 
console. 

The 14K TRS-80 Basic program 
listing and 8080/ Z-80 assembly language 
listing are included in the manual. $59.95. 

Interface Technology, P.O. Box 383, 
Des Plaines, IL 60018. (312) 297-2265. 
CIRCLE 341 ON READER SERVICE CARD 



HEURISTICS OFFERS 
EXPANDED VOCABULARY 

An expanded vocabulary option has 
^ been announced by Heuristics, Inc. The 



option makes available a 128-word 
vocabulary with either the Heuristics 7000 
industry-compatible unit or the 5000 Lear 
Siegler plug-in unit. 

Each "word" can be a phrase up to 
three seconds in length, and the unit can be 
trained or re-trained to accept the voice or 
voices of the users. $200. 

The 7000, which interfaces with all 
RS-232C terminals, sells for $3,000. The 
5000, which fits direclty inside Lear 
Siegler's ADM-3A terminal, sells for 
$2,000. 

Heuristics, Inc., 1285 Hammerwood 

Ave., Sunnyvale, CA 94086. (408) 

734-8532. 

CIRCLE 342 ON READER SERVICE CARD 

DATA ACQUISITION CARD 
FOR APPLE 

Mountain Computer Inc. announces 
an A/D + D/A card for Apple II com- 
puters. The card is intended for applica- 
tions in data acquisition and control. All 
functions are accomplished on one printed 
circuit card which occupies one peripheral 
slot in the Apple II computer. 

Its capabilities feature 16 channels 
analog to digital input, 16 channels digital 
to analog output. 

It affords the Apple user the capa- 
bilities of data acquisition and control on 
one PC card, and with conversion speed 



and accuracy which permits high fre- 
quency applications. 

Mountain Computer Inc., 300 Harvey 
West Blvd., Santa Cruz, CA 95060. (408) 

429-8600. 

CIRCLE 343 ON READER SERVICE CARD 

COMPUTER PUZZLE 




Micro-Madness is an actual micro- 
computer chip enlarged 80 times to 
become a 10" x 14", 252-piece jigsaw 
puzzle. The price includes the puzzle plus a 
full-color lithograph that is suitable for 
framing. $10. 

Eubanks Engineering, P.O. Box 127, 
Valencia, PA 16059. 



Inflation is threatening 
the evolution of 
higher education. 

—Charles Darwin 

Naturalist 

Why should we be concerned 
about the damage inflation is 
doing to our colleges? 

Because right now we need 
college-trained minds and college- 
based research more than ever 
before. So please give generously. 

In todays world, survival 
of the fittest means survival of 
the smartest. 

Help! Give to the college 
of your choice. 



051 




Council for Financial Aid lo Education, lnc 
680 Fifth Avenue. New York. N Y 10019 



NOVEMBER 1980 



*kXM 



A public service of this magazine 
and The Advertising Giuncil 



Video Games 1 $15 

Head -On, Tank Battle, 
Trapl 

Video Games 2 15 

Gremlin Hunt, Indy 
5000, Gunf ight 

Board Games 1 15 

Cubic , Mini -Gomoku 

Dungeon Chase 10 

A real-time, D&D, video 
game 

C1 Shorthand 12 

Two key command entry 
(C2/4/8 ready soon) 

One tape supports all 
ROM models. Color & 
sound on video games. 
Some programs on disk. 
Send for free catalog 

Orion Software 

Associates, Inc. 

147 Main Street 
ing, N.Y. 10562 

LE 1660N READER SERVICE CARD 
205 



Dysan 

^/corporation 

Solve your disc problems, 
buy 100% surface tested 
Dysan diskettes. All or- 
ders shipped from stock, 
within 24 hours. Call toll 
FREE (800) 235-4137 for 
prices and information. 
Visa and Master Card ac- 
cepted All orders sent 
postage paid 



PACIFIC 

EXCHANGES 

100 Foothill Blvd. 
San Luis Obispo, CA 
93401 (InCal. call 
(805) 543-1037.) 



CIRCLE 169 ON READER SERVICE CARD 



LOWER CASE FOR APPLE 

Lazer Systems announces the Lower 
Case +Plus for the Apple II and Apple II 
Plus. 

The plug-in board features two 
complete character sets on board. The 
primary character set is a word processing 
set that will place the two-character 
control function on the screen. The second 
character set is a Hi-RES graphics set that 
has pre-defined shapes such as cars, space 
ships and abstract graphics. 

The expansion socket allows the use 
of an external RAM-based, user-defined 
character set. It also has Reset key disable 
capability. $59.95. 

Lazer Systems, P.O. Box 55518, 
Riverside, CA 92517. 

CIRCLE 344 ON READER SERVICE CARD 

PET PRINTER ADAPTER 




Connecticut microcomputer offers 
an addressable printer adapter for use with 
all popular Commodore PET micro- 
computer models. 

The ADA 1400 printer adapter drives 
any compatible microcomputer printer 
with RS-232 interface from the PETs 
IEEE-488 bus. The addressable ADA 1400 
works with the Commodore disk and 
prints upper and lower case ASCII 
characters. 

A PET IEEE type port is provided for 
daisy-chaining other devices such as PET 
disk, mainframe computer interface and 
IEEE-488 devices. $179. 

Connecticut microcomputer, Inc., 34 
Del Mar Dr., Brookfield, CT 06804. 
CIRCLE 345 ON READER SERVICE CARD 

CUSTOMIZED TYPEHEADS 
AND PRINTWHEELS 

Typing and word processing of 
technical materials can be simplified with 
the introduction of customized typeheads 
and printwheels from Dramco Sales, Inc. 

Dramco replaces unwanted standard 
characters with symbols used in chemistry, 
engineering, mathematics, data processing 
and other disciplines. Company logos and 
custom ideograms can also be inserted into 



any typehead and metal or plastic 
printwheels which may be supplied by 
Dramco or the purchaser. 

Dramco Sales, Inc., Panta, Suite 700, 
620 Fifth Ave., NY 10020. (212)489-2260, 
(800) 223-0979. 
CIRCLE 346 ON READER SERVICE CARD 

DATA COMMUNICATIONS 
FOR TRS-80 




The Micromint Inc. announces 
the Chatterbox, a combination of the 
presently available COMM-80 170 
interface for the TRS-80 and an 
acoustic modem. 

It includes a built-in program- 
mable 50-19200 baud serial port, a 
Centronics compatible parallel 
printer port, a 300 baud acoustic 
originate modem, and a spare TRS- 
BUS expansion connector. It comes 
complete with power supply, connec- 
tion cable, user's manual, and smart 
terminal software. 

The Chatterbox is the only peri- 
pheral needed to allow a TRS-80 to 
communicate with timesharing 
systems such as Micronet and the 
Source. $259.95. 

The Micromint Inc., 917 Midway, 
Woodmere, NY 10098. (516) 374-6793. 

CIRCLE 347 ON READER SERVICE CARD 

RESERVE POWER 
SUPPLY FOR APPLE 

The Applejuice APS-3 is a reserve 
power supply for the Apple II. It 
supplies one hour back-up power to 
the Apple II and to Apple-powered 
peripherals. 

During a power outage, the 
Applejuice alerts the user visually, 
audibly and electronically that there 
is a power failure, thus giving him 
time to bring his system to an orderly 



ON/ST ANOB* 



CMA&Gf 



f All U«£ 



shut-down with all data files intact. 
$295. A 20 minute unit, the APS-2 is 
available for $249. 

High Technology, Inc., P.O. Box 
14665, Oklahoma City, OK 73113. 
(405) 840-9900. 

CIRCLE 348 ON READER SERVICE CARD 

PHOTOTYPE FROM 
MAGNETIC FILES 

Resource Graphics announces a 
service that will produce high quality 
phototype output from magnetic files. 
This capability is offered to authors, 
editors, and publishers of small 
magazines, newsletters, brochures, 
proposals, reports, and books. 

The system reads single density, 
8", soft sectored, CP/M compatible 
(or IBM compatible) diskette files, 
processing text which is in standard 
ASCII characters. Telephone linkage 
is also possible. 

The phototype output runs 1 to 24 
inches long by 8 inches in width, and 
can be set in over thirty different 
styles and in many sizes and formats. 
Rates begin at $.45 per 14 pica column 
inch for straight text matter. 

William Burns, Resource Gra- 
phics, 7291 Coronado Dr., San Jose, 
CA 95129. 

CIRCLE 349 ON READER SERVICE CARD 

INTERACTIVE VIDEO 







The Cavri III computer/video 
player integrator enables a user, 
seated at the computer keyboard, to 
index and later access a series of 
videotape frames or segments or to 
interact with videotaped materials. It 
also allows a user to control all remote 
functions of the VCR from the 
computer keyboard or from within a 
program. 

The Cavri III System consists of 
an Apple I/O board, cables and 
connectors, system software in 
Applesoft Basic on disk, and a user's 
manual. It is available for VCRs that 
carry a control pulse or that interface 
with manufacturers' search units. 

Cavri Systems Inc., 26 Trumbull 
St., New Haven, CT 06511. (203) 562- 
9873. 

CIRCLE 351 ON READER SERVICE CARD 






206 



CREATIVE COMPUTING 



16K MEMORY 

EXPANSION KIT 

FOR YOUR TRS-80, 

APPLE, AND S-100 

COMPUTER 

only $59 

• 200 Nsec Access, 375 
Nsec Cycle 

• Burned-in and Fully 
Tested 

• 1 yr. Parts Replacement 
Guarantee 

• Qty. Discounts Available 



J COmPUTER DEVICES 

1230 W.COUinS AVE. 
ORPDG6, CA 92668 
(714)633 7280 



r 



EDUCATIONAL 
SOFTWARE 
TRS-80* 
8KPET 



80+ Programs In: 

ELEMENTARY 

SCIENCE 

GEOGRAPHY 

ECONOMICS 

FOREIGN LANG. 

GAMES 



MATH 

BIOLOGY 

HISTORY 

ACCOUNTING 

BUSINESS ED. 

FARM RECORDS 




Programs are grouped Into packages of 4 
to 7 programs priced at $24.95 per 
package Including shipping and han- 
dling. Available on disk or tape. 

Write for catalog: 

MICRO LEARNINGWARE BOX 2134 

N. MANKATO MN 56001 , 507-625-2205 

Visa & MasterCard Accepted 



M hk 



• "TRS-80 is a registered 
trademark of TANDY CORP." 



mx: 



CIRCLE 212 ON READER SERVICE CARD 



AT LAST! 

Mass production prices on this high-quality software Buy 
direct and save 50% Now. also available tor CBASIC on CP M 
and MBASIC on HEATH HD0S 

DATA BASE MANAGER Modi S69 Mod-ll S199 

You can use it to maintain a data base & produce reports 
without any user programming Define tile parameters & report 
formats on-line Key random access, fast multi-key sort, field 
anth . label, audit log No time-consuming overlays 500 happy 
users in a year 

A/R Mod-I S69 Mod-ll $149 

Invoices, statements, aging, sales analysis, credit checking, 
form input, order entry As opposed to most other A/R. ours 
can be used by doctors, store managers, etc 

WORD PROCESSOR Mod-I $49 Mod-ll $49 

Center, justification, indentation, page numbering Mod-I 
version features upper /lower case without hardware change 1 

MAILING LIST Mod I $59 Mod-ll $99 

The best' Compare and be selective Form input. 5-digit 
selection code, zip code ext . sort any field, multiple labels 
Who else offers a report writer? 

INVENTORY Mod-I $99 Mod-ll $149 

Fast, key random access Reports include order info, 
performance summafy E O.Q.. and user-specified reports 
Many have converted their inventory system to ours 1 

GL A/R. A/P. & PAYROLL Mod-ll $129 each 

Integrated accounting package ISAM 100* page manual. Uses 
80 column screen, not 64 A S1.000 value Dual disk required 

1216. a cassette package of 10 business programs for Level II 
16K systems. $59 Includes word processor & data base Poker 

9ame $19 MICRO ARCHITECT. INC.. 

% Dothan St.. Arlington. MA 02174 



I 



WE WILL TRY TO SELL THE 

following product 
at the lowest 

ADVERTISIED PRICES 
IN THIS MAGAZINE 



PET APPLE 
ATARI 

CROMEMCO 

MISSISSIPPI MICROS, INC. 

Mart 51, Jackson, MS. 39204 

(601) 948-7846 

CIRCLE 225 ON READER SERVICE CARD 



ATARI 800 
SOFTWARE! 

ATARI 3-OMENSIONAL GRAPHICS PACKAGE 
HI-RES MULTICOLOR GRAPHICS TUTORIAL 
8K to 48K . ONLY- $29 95 +*1 50 pleS 

WUMPUS ADUENTURE - Gravies V sound 
darunic sane . 16K $H 95 +S1 58 pIK 

DOWN THE TRENCH Fast tnrtdc*. sound 
uses 1 joystick 8K or 16K $14.95 

BATTLING TANKS . requires 2 Joysticks 
Game 8K ONLY- $9.95 *».75 p«% 

3-D RED-fiAROH DOGFIGHT/RIGHT SYM.16K 
uses 1 joystick $15 95 ♦* 75 pU» 

SUBMARINE MINEFIELD navisator 8K 

uses 1 or 2 joysticks $9 95 H.75 pU> 

BASIC EDITOR 8K-up t8 95 +$75 **K 

HARDWARE DIRECT SOUND OUTPUT CABLE 
W^OFTWARE ..onl» $17.95 +$1 59 pI^» 

ON DISK- ADO *3 96 EXTRA PER ORDER 
Calif. Residents Please add Sales Tax 
SEND FOR YOUR FREE CATALOG TOOhY! ! ' 
FROM 

SEBREE'S COMPUTING . DEPT. 4S. 
456 GRANITE AL€. M0NROUIA,CA 9191ft 

213-359-8092 
FULL LINE OF 'BALLY ARCADE' SOFTWARE! 

CIRCLE 223 ON READER SERVICE CARD 



EDUCATORS... 
Are You Using 
Microcomputers ? 

A major publishing company is 
seeking reviewers of CAI Software 
for grade levels K-12. 

Reviewers should have experi- 
ence with classroom use of one or 
more microcomputing systems 
(PET, Apple, TRS-80, etc.). 

Write: 
Dept. A 

900 Sylvan Avenue 
Englewood Cliffs, New Jersey 
07632 



NEW MUSIC SOFTWARE 

TRS-80 LEVEL II (16K) 

MINI-KEYS play 7 octaves like any keybd. 
instrument. 100's of speeds. $12.95 



ReKord — hear prerecorded data play. 
Stars & Stripes Forever, Hallelujah! 



$16.95 



MYTEE MUSIC — assemble over 3000 tones 
in a music score. E-Z to use. E-Z to edit. 
Whole notes thru 1/64, dotted & triplet. 
100's of speed signatures. Instruction 
booklet makes program fun to use! 



MYTEE MUSIC-1 good 
MYTEE MUSIC'2 better 



MYTEE MUSIC-1 good 
MYTEE MUSIC-2 better 
MYTEE MUSIC-3 best 
(add $5.00 for disc) 



$14.95 
$29.95 



$14.95 
$29.95 
$44.95 



MYTEE MUSIC 

P.O. Box 2432 
Evansville, IN 47714 



CIRCLE 227 ON READER SERVICE CARD 



TAXMM 



Comprehensive computerized tax sys- 
tem for O.S.I. Developed and imple- 
mented since 1972. System proven by 
many thousands of tax returns having 
been processed. Over 25 federal sche- 
dules, some state schedules. System 
compares to any system on the market 
and is better than most. System is 75 to 
80 percent less expensive per return 
than other systems. Returns can be 
computed while client waits, or over- 
night. Excellent for C.P.A.s, lawyers, tax 
services, bookkeeping services or 
anyone who does tax returns. 

Call TAXMAN at 

(801) 485-2122 or (801) 487-9292 

Or write Taxman, 

1566 South Main, SLC, Utah 84115 

CIRCLE 240ON READER SERVICE CARD 



80X24 VIDE0TERM 

7X9 MATRIX DISPLAY FOR 

APPLE II® 

JKNP 



TM 



LOWER CASE W7 DESCENDERS 



CIRCLE 155 ON READER SERVICE CARD 



CIRCLE 235 ON READER SERVICE CARD 

207 



1 MOSTIMD !««« «■»•« Of »rm CMVUTI* *t 

80 columns by 24 lines with easy to read 7x9 dot matrix, 
upper and lower case with descenders using shift lock 
feature • 1K firmware incorporates PASCAL and BASIC 
protocalls so user is not required to enter machine 
language programs or change PASCALS. Misc. info, or 
Gotoxy files • Compatible with all APPLE II peripherals 
so user won't need new software patches for future 
software products • Crystal controlled dot clock for 
excellent character stability • VIDEOTERM is the same 
size as the Apple language card and power consump- 
tion is held to a minimum through the use of CMOS and 
lower power devices • Character set can be user de- 
finable up to a maximum of 128 symbols of 8x16 dot 
matrix font • Display control character mode and four 
standard display formats controlled by escape sequen- 
ces • Built in light pen capability • Inverse display 
mode • 50/60 HZ operation • Sockets on all IC's. 

PRICE: $345 

OPTIONS: Character Sets S39 

VIDEO SWITCH PLATE, inserts 

in case »lot to choose between ^^^ 

APPLE II' and VIDEOTERM $19 flft ^^T 

MANUAL: $19 ^» ■■M 

VIDEX 897 N.W. Grant Ave., Corvallis. OR 97330 Phone: (503) 758 0521 



CIRCLE 245 ON READER SERVICE CARD 



TRS-80 DIRECT 
CONNECT MODEM 

The MicroPeripheral Corp. an- 
nounces The Micro Connection, an 
integrated RS-232 adapter and direct 
connect telephone interface. It is 
designed to be used with any model 
TRS-80 and connects to the computer 
data buss. It eliminates the need for 
the Radio Shack expansion box, RS- 
232 adapter and acoustical telephone 
interface in telecommunications 
applications. 

The Micro Connection can adapt 
any TRS-80 for telecommunications 
with the Source, MicroNet, public 
bulletin boards, or virtually any 
computer system operating at 300 
baud, $249. 

The MicroPheripheral Corp., 
P.O. Box 529, Mercer Is., WA 98040. 
(206) 454-3303. 

CIRCLE 352 ON READER SERVICE CARD 

POWER CONTROL CONSOLE 




Kalglo Electronics Co., Inc. has intro- 
duced a computer power control console, 
the Spike-Spiker. The compact desktop 
console allows the user to plug all 
computer equipment into one unit and 
switch the equipment on and off in the 
required order. 

The Spike-Spiker also protects the 
computer from power line transients 
with an absorber and provides RF 
"hash" filtering between computer and 
motorized equipment in the computer 
system, home or office. The console has 8 
individually switched 120 VAC outlets 
divided into two separate filtered cir- 
cuits, main on/off switch, fuse and 
indicator light. $44.95. 

Kalglo Electronics Company, Inc., 
Colony Drive Industrial Park, Box 2062, 
Bethlehem, PA 18001. 

CIRCLE 353 ON READER SERVICE CARD 



POWER-LINE FILTER 

Television interference from your 
home computer and peripherals can be 
controlled by the EMI-117, 600-watt 
power-line filter from Marine Technol- 
ogy. 




WIRELESS KEYBOARD INPUT 
FOR TRS-80 



Installed at the wall socket used b 
the computer, it provides up to 60 d_ 
attenuation at TV/FM frequencies, 
preventing interference from reaching 
the home power wiring and being 
conducted/radiated to television re- 
ceivers in the vicinity. The filter is useful 
with noisy home appliances as well. 
$24.95 

Marine Technology, 2730 Temple Ave, 
Long Beach, CA 90806. (213) 595-6521 

CIRCLE 354 ON READER SERVICE CARD 

SUPERBOARD II MOD. KIT 

The Super-Mod Kit for the C1P and 
Superboard II provides a 48 char- 
acter/26 line video display and soft- 
ware selection of 300 or 1200 baud for 
cassette and RS-232 operation. 

The kit also provides an RS-232 Port; 
start/stop control of the cassette; and 
doubling of system clock speed (from 1 
MHz to 2 MHz). Instructions are 
included to add voice cueing and listen- 
ing function during data transfer to and 
from cassette. The OSI Monitor PROM 
is replaced by a expanded Monitor 
PROM to include the above functions 
while still allowing the computer to be 
"booted up" in the normal manner. 

Installation time is about 12 hours. 
$95. 

A.H. Systems Inc., 9710 Cozycroft 
Ave., Chatsworth CA 91311. (213) 998- 
0223. 

CIRCLE 355 ON READER SERVICE CARD 

MODEM MICROPHONE 




A modem microphone designed to give 
pure, clear data transmission has been 
introduced by Novation, Inc. 

Engineered specifically to eliminate 
data distorting second harmonics, the 
FCC registered Super Mike sups into the 
telephone handset replacing the existing 
carbon microphone. $9.95 

Novation, 18664 Oxnard St., Tarzana, 
CA 91356. 

CIRCLE 356 ON READER SERVICE CARD 




:>>>>>S 



Omni Automation announces a wire- 
less keyboard for the TRS-80. The model 
RX-10 includes a hand held, ultrasonic 
remote which can be used across the 
room. 

The system also permits control of 
remote devices in the home or office. 
Communication to the remotes is via the 
A.C. power lines. A flexible scheduling 
program can activate the remotes auto- 
matically using cyclic, time of day, or 
future date schedules. 

The RX-10 system includes all nece- 
ssary cables, interfaces, cordless con- 
troller, command console, appliance and 
lamp control modules. Software is pro- 
vided on diskette for status display, 
security monitoring, and scheduling. 

Omni Automation, P.O. Box 7716, 
Atlanta, GA 30357. 

CIRCLE 357 ON READER SERVICE CARD 



CRYPTOGRAPHY KIT 

Western Digital Corporation 
announces the availability of a Cryto- 
graphic Primer Kit. The kit educates 
home computer users about crypto- 
graphy, and enables them to encode and 
protect their own data against un- 
authorized access. 

Each kit includes: an RS232 Interface 
Cryptographic Board in either kit or 
preassembled form which attaches to the 
RS-232 port of a computer; a "Crypto- 
graphic Primer" with several different 
cryptographic architectures using the 
Data Encryption Standard; "Code- 
breakers" by David Kahn which gives 
the reader a perspective of crypto- 
graphy's impact on history and an 
assembly/wiring manual which includes 
wiring diagrams, assembly instructions 
and operating instructions. Kit, $395; 
assembled, $495. 

Western Digital 3128 Redhill Ave., 
Newport Beach, CA 92663. (714) 557- 
3550. 

CIRCLE 358 ON READER SERVICE CARD 



208 



CREATIVE COMPUTING 



cs 



rW(Ot» 
CM CM CM <X CM 



49 

r- S3 

£ o 

0) «M 

UJ C 



00 



o 

CM 



Sc^cSlS 



58838 



<or»coa>p 

*-<MCO^»0 



SSSSS 



CphoOpAQ 

88888 
88888 

s^§ic§ 



CO CO CO CO CO 

(DN0OO>Q 
CO CO CO CO CO 

▼-cMco^m 

CO CO CO CO CO 

85882 

CO CO CO CO CO 
COOCOCOCO 



35333 



«^>CpCSQ 
cococo^ 

CO CO CO CO CO 



Sr^ooo>Q 
CM CM CM CO 



^-cMco^m 



cq {]A (A CO CD 

<pr^QOO)Q 
tnmtntncD 



SmS«rf) 



CO CO CO CO ci 
CO CO CO CO CO 
CO CO CO CO CO 

CO CO CO CO CO 



8r^cgQ>o 
CO 00 COCA 

CO CO 00 CO CO 



££2£8 



^-CMco^m 
co co co co co 



SScScI 



o 

CO 



(QhoODCBQ 
co co co co co 

t-CMCO^iQ 

££&'&& 

CO CO CO CO CO 



SS8S8 



v-CMCO^lO 
CM CM CM CM CM 



cpf-COQJQ 

O^ O^ O) w^ 0^ 
CO CO CO CO CO 

SaoSScooB 

CO CO CO CO CO 

Soo oo 00 00 
CO CO CO CO 

r»ooa>o 

OCOCOCO 



<or-ao 

COOCO 



35338 

CM CM CM CM CM 

iSSI 

CM CM CM CM CM 

CO CO CO CO ^r 
CM CM CM CM CM 

CO CO CO CO CO 
CM CM CM CM CM 

<ph»aog>Q 



0) 

E 



c 




^ScS 



5 &D DDDDDDDDD DDDDDDDDD 



m </) 



D DDDDDDDDD DDDDDDDDD 



5 



2. 8 
z o < o </> > o 



o 
5 « 



|8q DDDDDDDDD DDDDDDDDD 



DDDDDDDDD DDDDDDDDD 



K 



48 

S3 

00 3" 
a>g 

e © 

E > 



^-CMCO^lO 

rv. f^ fv. r^ rv. 

CM CM CM CM CM 



c§8c?l§ 

lOf^CQO>Q 



a 4d 

"" CO 

Q. 
X 
UJ 



00 



CM CM CM CM CM 

cor*»coa>o 
«-CMco^m 

8fe882 
5S838 



$8§i8i§ 
8ff8c$$ 
c§§c§cf? 

s8§c5i§ 

Efc?5£8 

CM CM CM CM CM 



35333 

^*— *— *— ^ 

«r*-COa>Q 
COCOCO^ 

CO CO CO CO CO 

Sr*~coo>Q 
CM CM CM CO 



T-CMCO^JD 
CO CO CO CO CO 

cor^coojo 

CO CO CO CO CO 

■r- CM co ***n 
co co co co co 

8qS8° 

CO CO CO CO CO 
CO CO CO CO CO 



^-CMCO^IO 

i^ r*. r» r-> r». 



8r>-opo>o 
cococor*. 

CO CO CO CO CD 



CO CO CO CO CO 
CO CO CO CO CO 

cor^aoaQ 

CO CO CO CO CO 

roS§c5S 

Sh«- 00O)Q 
CO CO CO CO 



S^apcnQ 
O>0)0>0 

8r^gog>0 
CO CO coot 

coooooaooo 

gfc££8 



t-CMCO^-IO 

rs. r^. r^ r^. r^. 

CO CO CO CO CO 



cDco<£cor > » 

CO CO CO CO CO 

«CO (O CD CO 
CO CO CO CO 

tpr-opO>Q 
CO CO CO CO CO 

CO CO CO CO CO 



T-CMCO^tf5 

sssas 

<Dr<-aoo>Q 

CM CM CM CM CM 

^-CMco^m 

CM CM CM CM CM 

§§S8§ 



(Osooao 

88883 

22222! 
ooooo 

0D 00 00 00 O) 
CO CO CO CO CO 

8coco^c§ 



35333 

CM CM CM CM CM 

CM CM CM CM CM 
CO^ODCAQ 



SI 

E 

0) 



c 



i 



c s 

CB (0 

2L o 




I |D 

♦- o 
u. 



© CO 



DDDDDDDDD DDDDDDDDD 
DDDDDDDDD DDDDDDDDD 



£. z 



CO 

CO 

CO 

< o 



o 8 a OQQODaOQD DDDDDDDDD 

CD 'tj <jjj 

B € ?D DDDDDDDDD DD 

<y) > o 



DDDDDDD 



SUBSCRIPTIONS TO CREATIVE COMPUTING 

Canada and 
Term USA Foreign surface 



3 yrs (36 issues) 
2 yrs (24 issues) 
1 yr (12 issues) 



□ $40 

□ 28 

□ 15 



□ $67 

□ 46 

□ 24 



□ New 

□ Renewal 

Foreign air 

□ $130 

□ 88 

□ 45 



For a change of address, please attach old label 



BOOKS, POSTERS, RECORDS, GAMES 



Quan. Cat. 



Title 



List Price Total 



3G Binary Dice $1.25 

5G Computer Myth Posters 3.00 

6A Best of Creative Computing- Vol. 1 8.95 

6B Best of Creative Computing-Vol. 2 8.95 

6C Basic Computer Games 7.50 

6C2 More Basic Computer Games 7.50 

6C4 More Basic Games-TRS-80 7.95 

6F Best of Byte 1195 

6G Colossal Computer Cartoon Book 4.95 

6H Be A Computer Literate 3.95 

62 Computer Rage Game 8.95 

9Y Problems for Computer Solution 9.95 

Teacher's Edition 

9Z Problems for Computer Solution 4.95 

10R Computer Coin Games 3.95 

12A Katie and the Computer 6.95 

12D Computers in Mathematics- 15.95 

A Sourcebook of Ideas 

12E Impact of Computers on Society 17.95 

and Ethics: Bibliography 
12C Best of Creative Computing-Vol. 3 8.95 

12B Tales of the Marvelous Machine 7.95 

12G Computers for Kids-Apple 3.95 

12H Computers for Kids-TRS-80 3.95 

12J Computers for Kids-Atari 3.95 

CR101 Computer Music Record 6.00 

RWP Word Processing Reprint .50 

RSS Sorting & Shuffling Reorint .50 

SUBTOTAL 



SOFTWARE 



Quan 



Cat, 



T-SHIRTS 



Title 



BACK ISSUES 
Price 



Total 



Books, Records, Games 
$2 USA, $4 Foreign Shipping Cha/ge 
NJ residents add 5% sales tax 
Magazine subscriptions 

TOTAL 



□ Check or money order enclosed (U.S. funds only) 

□ VISA □ Master Charge □ American Express 



Card number 



Expiration Date 



Signature 



Name 



Address 



City 



State. 



Zip. 



Q^ 3 

3-9 
I? 

• X 



a 

ft 



ft 
© 



89 
SO, 



Here 


en 


Place 



5*8 ft 

^ o 



S3 

so, 



I g 


T) 


<T> Q» 


0) 


5 J 


o 


<l 



I 



Place 

First Class 

Stamp Here 



creative computing 

P.O. Box 789-M 
Morristown, N.J. 07960 



1080 CC 




CALIFORNIA 

Rainbow Computing, Inc.— 9719 Res- 
eda Blvd., Northridge 91324; (213) 349- 
5560. 10-7 Tues-Fri, 10-5 Sat, 12-5 Sun. 
Apple, DEC, and Atari. Authorized Sales 
and Service. 



D.E.S. Data Equipment Supply— 8315 

Firestone, Downey 90241. (213) 923- 
9361. 7 days. Commodore PET spe- 
cialists. Hardware Software, Books, 
Mags, Supplies, In House Maintenance. 



Advance Data Concepts— 2280 Dia- 
mond Blvd., Concord, 94520; (415) 671- 
9016. 9-5 Mon-Fri. Vector-Graphic, 
CP/M Software Headquarters-User's 
Group. 



CONNECTICUT 

Computer works— 1439 Post Rd., East 
Westport 06880; (203) 255-9096. 12-6 
Tues-Fri, 12-9 Thu, 10-5 Sat. 



FLORIDA 

AMF Electronics -11158 N. 30th St, 
Tampa 33612; (813) 971-4072. 10-6 
Mon-Sat. Apple Computer Sales & 
Service; TRS-80, Apple Software & 
Peripherals; S-100 boards, computer 
parts & books. 



GEORGIA 

Atlanta Computer Mart -5091 Buford 
Hwy, Atlanta 30340; (404) 455-0647. 
10-6 Mon-Sat. 



To include your store In Creative Computing's 
Retail Roster, ell the Advrtlelng Department at 
(201)540-9168. 



ILLINOIS 

Computer Junction— 543 S. York Rd., 
Elmhurst 60126; (312) 530-1125. Mon & 
Thu 9:30-8:30 pm; Tues-Sat 9:30-5:30; 
Sun 12-4:30. 

The Computer Room— 106 E. Oak St, 

Chicago 60611; (312) 337-6744. 11-7 
Mon-Fri, 11-6 Sat. 

Data Domain of Schaumburg— 1612 E. 

Algonquin Rd, Schaumburg 60195; 
(312) 397-8700. 12-9 Tue-Fri, 11-5 Sat. 
Largest book & magazine selection. 

Lillipute Computer Mart, Inc.— 4446 

Oakton, Skokie 60076; (312) 674-1383. 
M-F 10:30-8 pm, Sat 10-6. We sell 
Cromemco, Gimix, Bell & Howell, 
NorthStar and others. Starting our fifth 
year in business. 



KENTUCKY 

ComputerLand of Louisville— 10414 

Shelbyville Rd, Louisville 40223; (502) 
245-8288. 10-5:30. 



MASSACHUSETTS 

Computer Mart, Inc.— 1395 Main St, 
Waltham 02154; (617) 899-4540. 11-6 
Tue-Sat. Atari, Heath, NEC, SWTP & 
S-100 bus systems; Word Processing 
Specialists. 

Neeco— 679 Highland Ave, Needham 
02194; (617) 449-1760. 9-5:30 Mon-Fri. 
Commodore, Apple, Superbrain, 
Tl 99/4. 



NEW JERSEY 

Computernook— Rt. 46, Pine Brook 
Plaza, Pine Brook 07058; (201) 575- 
9468. 10-6:30 MTWS, 10-8 Thurs., Fri. 
Apple/Commodore Authorized dealer. 



Stonehenge Computer Shop— 89 Sum- 
mit Avenue, Summit 07901; (201) 
277-1020. 10 am- 6:30 pm Mon-Sat. 
Apple/Bell & Howell/Commodore 
Authorized Dealer, Sales and Service. 

NEW YORK 

The Computer Corner Inc— 200 Hamil- 
ton Ave, White Plains 10601; (914)- 
WHY DATA. 1(>6 Mon-Sat, 10-9 Thu. 



OHIO 

The Basic Computer Shop— 2671 W. 

Market St, Akron 44313; (216) 867-0808. 
10-6 Mon-Sat. 

Micro Mini Computer World— 74 Rob- 
inwood Ave., Columbus 43213; (614) 
235-5813/6058. 11-7 Tues-Sat. Author- 
ized Apple/Commodore dealer. Sales, 
Service, Business Software. 



PENNSYLVANIA 

Personal Computer Corp.— 24-26 W. 
Lancaster Ave, Paoli 19301; (215)647- 
8463. 10-6 Mon-Fri, 10-8 Wed, 10-5 
Sat. 



VIRGINIA 

ComputerLand/Tysons Corner — 8411 
Old Corthouse Rd, Vienna 22180; (703) 
893-0424. 10-6 MTWF, 10-9 Thu, 10-5 
Sat. 

Computer Plus, Inc— 6120 Franconia 
Rd, Alexandria 22301; (703) 971-1996. 
10-9 Mon-Fri, 10-6 Sat. Micro special- 
ists, books, classes, software, main- 
tenance. 'The PLUS makes the dif- 
ference.' 



// 



NOVEMBER 1980 



209 




Dr. Quaale sat before the large audio-analyzer as he 
and so many before him had done, pondering the an- 
cient words. Great words to be sure; no one of the dis- 
tinguished anthro-linguists had ever doubted that. Oh, 
the script was faded and very nearly indecipherable, but 
modern audio-retrieving techniques had made it pos- 
sible to revive similarly worn writtings of other civiliza- 
tion in this way. The long abandonment of any sort of 
written communication in Quaale's world, and the pecu- 
liar recalcitrance of this message had not made his task 
any easier. One hundred percent efficiency in translating 
from written to phonic language was a long way from 
realization. 

But the upcoming meeting was to be the summit, so 
far as the words on the ancient container were con- 
cerned. All the great scientists, linguists, social scien- 
tists and theologians of Merador had been invited. Either 
a definitive analysis would be forthcoming, or the writ- 
ings would be fed again into the memory banks for an- 
other millenium and another summit. Quaale was hope- 
ful this time; he had, afte r all, the very latest techniques 

He had the very latest techniques 
of linguistic analysis available to 
him, 

of linguistic analysis available to him. His task was clear. 
First the usual breakdown into the phonetic, phonic, 
phatic and locutionary levels of speech. This had not 
been difficult, although some extrapolation from Mera- 
dorian syntatic structures to the Ancient syntax had 
been necessary. More problematic would be the subse- 
quent analysis into the elocutionary and rhetorical 
levels. Hopefully this would give some insight into the 
semantic, as well as the syntactic deep structure of the 
script. Doubt gnawed at him nevertheless. He recalled 
the great clash early in the 22nd century between the 
linguists and the philosophers of language on the great 
questions of literal vs. symbolic meaning and denotation 
vs. connotation. Would the usual analysis into noun 
phrases and verb phrases alone suffice? What of the 
vexing question of the levels of sense? What of the in- 
terpretive, allegorical and metaphorical levels of 
meaning? 

"Well," he mused, "can't worry about that right now! 
I'm sure the philosophers and theologians will have a 
ball with it anyway!" 

Aware of the impending summit and the imminent 
entrance of its participants, Quaale switched on the 
audio-enlarger for the last time. The machine delivered 
its measured monotone: 

"Mare-akareist-muss-frum-be-ing 
Mars-acreryst-mass-frumbin 
Mar-sacral-lyte-massfrumbing 
Mars-akareist-massfrum-binn 
Mer-okar-rytemuss-frumbin 
Mars-acre-heist-mess-frumbin 
Mar-ol-ar-heist-mass-frum-be-ing 
Mare-ache-her-hite-miss-frumbin 
Mars-ache-her-heistmussfrum-bin" 

rnn»nZ « S o e /u lnl ;. AsSOC - Prof ' of Philosophy, Boston State 
College, 625 Huntington Ave., Boston, MA 02115. 



U* 



—i 



\b^- 



T: 



>* 



The Ma 



j 



i 



-j 







s 



tfX\ 



Nothing. 

"Not a recognizable verb in the whole mess," he 
noted disgustedly. 

Bits and pieces to be sure, but hopes of finding some 
kind of coherent sentence structure seemed to be fad- 
ing. No time for further private speculations now, as the 
conference was about to begin. Dr. Quaale greeted each 
of the distinguished panelists in turn and summarized 
progress to date: 

"You will notice, gentlemen, that efforts to analyze the 
ancient words into their deep phrase structure have so 
far failed. A number of different analyses offer them- 
selves as candidates for nouns, noun phrases, articles 
and the like, but a clear sentential structure has yet to 
emerge." 

"Excuse me, Dr. Quaale," interrupted C6nrayneran, 
the distinguished sociologist, "but isn't it just possible 
that the symbols have no sentential structure? Could it 
be a name — perhaps of some great personage in the 
history of that civilization, for example?" 

"Certainly that's a possibility," responded Quaale. 
"You will notice that the name of the planet Mars occurs 
fairly frequently in the computer's speakouts. It has been 
suggested by the astronomer Zaekbar that the whole 
phrase refers to some sort of cataclysmic event on that 
planet. If it please the participants, I will ask Prof. 
Zaekbar to elaborate." 

The eminent astronomer and astrophysicist crawled 
swiftly to the analysis screen and began his presentation. 

"Quite obviously, these words refer to some sort of 
physical catastrophe of immense proportions on Mars. 
It would seem that there are two reasons for thinking 
so. For one thing, the frequent occurrence of the term 
'mass' in the readouts. Now, we know that in the approxi- 
mate time period under discussion, there was great 
volcanic activity on Mars with subsequent shifts of great 
land masses. For another thing, we can see that the 
entire phrase actually occurs several times on the con- 
tainer in question. We cannot say just how many times, 
of course, due to the poor condition of the relics. Never- 
theless, the sheer number of repetitions suggest that 
they are associated with an inordinate degree of busy 
almost frantic activity. Most likely a holocaust of some 
kind." 

Zaekbar's remarks were greeted by general nodding 
and approval, though a number of the theoreticians pres- 
ent voiced objection to this analysis. 



210 



CREATIVE COMPUTING 



rr 



Acre-Heist Mess Frumbin 





Anthony Serafini 

"Excuse me," chimed in the biologist Jola, "Surely we 
cannot overlook the frequency of biological terms in the 
speakouts. Notice that symbols like 'ache,' 'sacral' and 
'okar' have very definite biological connotations. We 
must remember, gentlemen, that the 22nd century was a 
time of great biological as well as geological upheavel 
throughout the galaxy. I am willing to accept, as at least 
a working hypothesis, Quaale's and Zaekbar's sugges- 
tion that the planet Mars figures importantly in our un- 
derstanding of the words. But it seems to me that they 
refer to some sort of great biological catastrophe — 
perhaps a sudden evolutionary shift. Though our records 
are imprecise on this question, there is good reason to 
believe that the Okar seed wreaked havoc in some way 
with the planet's experimentation in breeding species 
across dimensional lines. Most of the planet's faunae 
and florae either died or took ill. To be sure, the major 
portion of the trouble occurred late in the 21st century, 
but a mutated species of Okra may have arisen later, 
i.e., in the period in question." 

"Gentlemen, gentlemen," pleaded Dr. Quaale, striv- 
ing to quiet the agitated group of scholars. "We have let 
the scientific community have their say; now in all fair- 
ness we must hear from the most distinguished historian 
Prof. Wombator." 

"Thank you Dr. Quaale, I do in fact have a theory on 
the writings. First off, let me add my voice to those who 
see the words as referring to Martian phenomena; I also 
am of one mind with Dr. Quaale — on that point anyway. 
Now, my intention is not to upstage Dr. Quaale on 
linguistic niceties, but I believe we all have overlooked 
possible slang and regionalistic interpretations of the 
words. Please to note that the term 'heist' occurs in the 
computer speakouts, a slang, but meaningful, expres- 
sion which fell into disuse sometime around the begin- 
ning of the 21st century on Mars, though it disappeared 
from the vocabulary considerably earlier on Earth and 
other planets. I believe you will find that it is synonymous 
with 'steal,' 'rob' or something of that order. 'Acre,' of 
course, was and still is, a term denoting a segment of 
land coverage in many parts of the galaxy. Recent stud- 
ies in the Tapes of Galactic History have shown that the 
period of time we are talking about was one of violent, 
and frequently bloody, social change, often coincident 
with geological and biological upheavels spoken of 
earlier in this colloquium. The magnitudes of these 
changes was perhaps less awesome on Mars than on 
such notoriously savage worlds as Jupiter and Titan, but 

NOVEMBER 1980 



211 



awesome nonetheless. The speakout I would prefer, 
therefore, is the 'Mars Acre-Heist Mess Frumbin.' I 
should not be at all surprised if it refers to some cheap 
tabloid story on the great land swindles occurring on 
Mars during that period." 

"Absolute rubbish," interrupted the theologian Koler- 
lan. A startling quiet settled over the room. No one had 
expected the famed theologian to attend a meeting of 
mere scientists. For decades he had been the chief 
religious and philosophical leader in the galaxy and his 
disdain for the ways of science was legend. "If I may 
have my say in such august company," he began sar- 
donically, "I rather think that the speculations offered so 
far are altogether too thin to build anything resembling 
a plausible interpretation. Bear in mind, gentlemen, I 
am not suggesting you discontinue your noble efforts, 
for whatever good it will do. You must now look to the 
real sciences of theology and philosophy, however, for 
ultimate truth. A growing number of my colleagues feel 
certain that the words are traces of what we would call 
"beings." Notice the final phonic units in each speakout. 
We feel these beings to have been ancient travellers, 
most likely divine, or very nearly so. Further, if one stud- 
ies the symbols on the containers one can see the hand 
of the Divine at work, much as the great philosophers of 
antiquity claimed that the Purposeful nature of the Uni- 
verse is revealed in His creations. That we possess only 
the container and not the contents is doubtless part of 
the Divine Plan which will one day be revealed to us. You 
scientists try to decipher the words, but the meaning 
eludes you as it always will. A true understanding can 
only come from within the depths of your consciousness. 
You must look beyond the literal; only then will you hope 
to begin to unravel the truly profound story encapsulated 
in the words. Only then will you be one with the divine 
intentions of the holy and all-powerful 'being' who sent 
us this message. 

You must look beyond the literal; 
only then will you hope to begin 
to unravel the truly profound story 
encapsulated in the words, 

Quaale was stunned; Kolerlan's presentation virtually 
guaranteed the failure of the colloquium, so great was 
his influence in the galaxy. The transcript of the pro- 
ceedings would be published of course. More than 
likely though, the thoughts of Kolerian had slammed the 
door on any chance of open-minded discussion of other 

theories. 

Following brief conversation with each of the par- 
ticipants, Quaale retired to his study to feed the writings 
to the memory banks of the Central Computers, as so 
many of his predecessors had done. Deftly working over 
the micro-input switches, he located the mnemonic cell 
where the crumbling relic would be filed for the benefit 
of future scholars. Wondering if anyone would ever 
solve the mystery, he looked one more time at the an- 
cient and still indecipherable communication: "Merry 
Christmas from Bing," and fed it into the computer. □ 

To order, use bound-in card in back of magazine. 



Buddy, can you 

spare 
dime? 




Contents 



Artillery-3 

Baccarat 

BibleQuiz 

Big6 

Binary 

Blackbox 

Bobstones 

Bocce 

Bogall 

Bumbrun 

Bridge-It 

Camel 

Chase 

Chuck-A-Luck 

Close Encounters 

Column 

Concentration 

Condot 

Convoy 

Corral 

Countdown 

Cup 

Dealer's Choice 

Deepspace 

Defuse 

Dodgem 

Doors 

Drag 

Dr.Z 
Eliza 
Father 
Flip 

Four In A Row 

Geowar 

Grand Prix 

Guess-It 

ICBM 

Inkblot 

Joust 

Jumping Balls 

Keno 

LGame 



Life Expectancy 

Lissajous 

Magic Square 

Man-Eating Rabbit 

Maneuvers 

Mastermind 

Masterbagels 

Matpuzzle 

Maze 

Millionaire 

Minotaur 

Motorcycle Jump 

Nomad 

Not One 

Obstacle 

Octrix 

Pasart 

Pasart 2 

Pinball 

Rabbit Chase 

Roadrace 

Rotate 

Safe 

Scales 

Schmoo 

Seabattle 

Seawar 

Shoot 

Smash 

Strike 9 

Tennis 

Tickertape 

TV Plot 

Twonky 

Two-to-Ten 

UFO 

Under & Over 

Van Gam 

Warfish 

Word Search Puzzle 

Wumpus 1 

Wumpus2 





$§ 



s£fe 



SB** 1 



Vid*** 



*y 



cw* v 



~Z « * 



i «• 



The programs in More Basic Computer Games and Its new version 
More Basic Computer Games: TRS-80 Edition cost less than 10$ each. 
The micro chip brought down the cost of hardware and Creative 
Computing brings down the cost of software. 

This fantastic sequel to Basic Computer Games contains sample 
runs, program listings and descriptions for 84 new games. 

Talk to Eliza, the psychologist, evade a man-eating rabbit, crack a 
safe, tame a wild horse, become a millionaire, race your Ferrari, joust 
with a Knight, trek across the desert on your camel, navigate in deep 
space, hunt a wumpus and much more. 

Rather be on a space adventure? Play Close Encounters, Deepspace 
or ICBM. 

In More Basic Computer Games all the games run in standard 
Microsoft Basic and a Basic Conversion table is included. 

In the new More Basic Computer Games: TRS-80 Edition, all 84 
games are converted to run on Level II 16K TRS-80 machines. Radio 
Shack users will delight that the conversion work on these imaginative 
and challenging games has been done. 

Dr. Dobb's Journal of Computer Calisthenics & Orthodontia says 
"Whether you are interested in war games, gambling, sports, grids and 
mazes, space, psychology, drag racing or throwing mud balls, More 
Basic Computer Games has something in it for you." 

Edited by David Ahl and Steve North, both books are a large 8 Vz x11" 
Softbound, 200 pages. Each is $7.95. More Basic Computer Games 
(6C2). More Basic Computer Games: TRS-80 Edition (6C4). 



To order, use bound-in card In back of magazine. 



212 



CREATIVE COMPUTING 




how 

bout 8<t? 



Why is Creative Computing's most popular book now in its fourth 
int run, having sold over one hundred thousand copies? Simple, 
kcause it gives users the excitement they want from their computers. 
Basic Computer Games is a complete anthology of 101 favorite 
imes and simulations, each complete with sample run, program 
rting, and description. All games run in standard Microsoft Basic and 
e easy \o use whh any computer. 

Command the Enterprise against the fleet of Klingons menacing the 

lited Federation of Planets. Learn to simulate a parachute jump 

iccessfully, not with a splat. Play High l-Q, Hi-Lo, or Mastermind and 

.tprove your powers of logic. On a wet winter day figure a way to 

[anage the city of Hammurabi so your people don't starve. Let your 

>mputer print you a calendar for the year 1984. 

There are games just for fun, to develop logic strategies, to teach 

ivironmental solutions, to simulate athletic competition, to play alone 

>N\\haSTOUV>.Tfte 101 games offer the kind of challenge, excitement, 

id delight you want from your computer, and your computer wants 

Edited by David Ahl and outrageously illustrated by George Beker. 
irge format paperbound, 200 pages, $7.95. (6C). 
All games available on two 8" CP/M disks. $24.95 each. 



WEMBER 1980 




*A$IC 



niss 



re 






'-*««5g; 



■Mt! 



Contents 



Introduction 

The Basic Language 

Conversion To Other 

Basics 
Acey Ducey 
Amazing 
Animal 
Awari 
Bagels 
Banner 
Basketball 
Batnum 
Battle 
Blackjack 
Bombardment 
Bombs Away 
Bounce 
Bowling 
Boxing 
Bug 

Bullfight 
Bullseye 
Bunny 
Buzzword 
Calendar 
Change 
Checkers 
Chemist 
Chief 
Chomp 
Civil War 
Combat 
Craps 
Cube 

Depth Charge 
Diamond 
Dice 
Digits 
Even Wins 
Flip Flop 
Football 
Fur Trader 
Golf 

Gomoko 
Guess 
Gunner 
Hammurabi 
Hangman 
Hello 
Hexapawn 



Hi-Lo 

High l-Q 

Hockey 

Horserace 

Hurkle 

Kinema 

King 

Letter 

Life 

Life For Two 

Literature Quiz 

Love 

Lunar LEM Rocket 

Master Mind " 

Math Dice 

Mugwump 

Name 

Nicomachus 

Nim 

Number 

One Check 

Orbit 

Pizza 

Poetry 

Poker 

Queen 

Reverse 

Rock, Scissors, Paper 

Roulette 

Russian Roulette 

Salvo 

Sine Wave 

Slalom 

Slots 

Splat 

Stars 

Stock Market 

Super Star Trek" 

Synonym 

Target 

3-D Plot 

3-D Tic-Tac-Toe 

Tic Tac toe 

Tower 

Train 

Trap 

23 Matches 

War 

Weekday 

Word 

Index 



213 



creative computing press 



To order, use bound-in card in back of magazine. 



r 



The Best of 

creative 
GompatiRg 

Volume 1 



■S f 




The Best of 

creative 
computing 




All the articles, stories, learning activities and 
games that appeared in the first year of Creative 
Computing. American Vocational Journal says This 
book is the 'Whole Earth Catolog' of computers." 
Contents cover the gamut of computer applications in 
education and recreation. Over 200 contributors! Now 
in its fourth print run with an exciting new cover. 328 
pp. 8V2 x 11"Softbound. (6A)$8.95 

Partial Listing of Contents - 



ARTICLES AND COMMENTARY 

• Editorials 

Birth of a Magazine — Ahl 
A Computer in the Classroom? 
Is Breaking Into A Timesharing 

System A Crime? — Tagg 
Where Are We Going? — Ahl 

• Computers in Education 
What s Wrong With the Little 

Red Schoolhouse? — Ahl 
How to Cope With Your Computer 
Recent Trends in Mathematics 

Curriculum Research — Critchfield 
CITALA Computing in a Two Year College 

— Howard, et al 
EXPER SIM Experimental Simulation — 
Monty Python Meets Monte Cristo — 
IFIP Conference Report — Hebenstreit 

• Transportability 

The Parable of the Horse — Nevison 
Technical Transport Problems — 
CONDUIT Documentation Guideline 
Statewide Pools May Not Yield 
Expected Benefits — Magarrell 

• Hard Core CAI 

PLATO IV System Progress - 
TICCIT System Progress — 
PLANIT The Portable CAI System 

• Careers 

A Computer Career for You? 
Career Education Will It Last? 
Key to Your Future? — Corr 
Profile of an Industry 

• Applications 

Computers and the Weather 
Computer Simulation of the Atmosphere 
Weather Forecasting Applications 
Relativity for Computers All Arithmetic 
Mr Spock s 7th Sense — Kibler 

• Programming and Languages 
Structured Programming — Hoogendyk 
On Computer Languages — Ahl 
Toward A Human Computer 

Language — Cannara 



Learning About Smalltalk — Goldeen 
Eclectic Programming Languages 
A New Approach to Testing — 
• Computer Impact on Society 
The Computer Threat to Society — Ahl 
Digital Calculators — Then and Now 
The Computer Threat to Society? — 
Putting Teeth Into Privacy 
Legislation — Hastings 
Industry Leaders at Privacy 

Hearings — Hastings 
Record-keeping in the Space Age — 
A Manufacturer Looks at Data 

Privacy — Fntze 
Survey of Public Attitudes Toward 

Computers — Ahl 
NBS Privacy Conference 
How Much Privacy Should You Have — 
Memoirs of an Ex-Social Security 
^ Number Giver — Campbell 
Crime. Cops. Computers — Malcolm 
Prosecutor Management Information 
System — Ahl 

A Computerized Criminal Justice 
_ System — Boekelman 
Embezzler s Guide to the Computer 
Credit Card Crooks 
Waiting for the Great Computer 

Rip-Off — Hastings 
Computer Abuse — Snyder 

PEOPLE. PLACES. AND THINGS 

Nicholas Copernicus 

Evelyn Roth 

PILOT 73 Information Exchange — 

Nolan Bushnell — Todd 

Playing PONG to Win — Ahl 

Your Own Computer? — Ahl 

Introducing Computer Recreations 

Corp — Todd. Guthrey 
Creative Computing Compendium 
Flying Buffalo — Loomis 
Compleat Computer Catalogue 
National Computers in Education 

Conference? 



The Best of 

creative 
compafciRg 

Volume 2 



me mst or 1 

creative 
computing 

Vol 2 IPITfcP »y PAVID AH L 



►^S* 



ns 






~T' 



~r**Q^ 



«3 



«. .'* <u l— -» 



A staggering diversity of information and activities 
culled from the issues of the 2nd year of Creative 
Computing. Includes feature on artificial intelligence, 
on computers in education, on the arts. American 
Libraries says "Non-technical in approach, its pages 
are filled with information, articles, games and 
activities. Fun layout." 67 pages devoted to puzzles, 
programs, and things to do. The reviews alone could 
make the book. 336 pp. 8V2 x 11" Softbound. (6B) $8.95. 

Partial Listing of Contents - 



ARTICLES AND COMMENTARY 

•Technology — Present and Future 

The Future of Computer Technology - 
Computing Power to the People 
Videodiscs — The Ultimate Computer 

Input Device 9 - Bork 
Round and Round They Go 
The $2 98 Computer Library - 
Personal Computers 
Russian Computing - Ahl 
Desk Calculator from China - Chang 
Microprocessors & Microcomputers 
The State of the Art - Callahan 
• Languages and Programming Theory 
The Reactive Engine Paper - Wmograd 
About Computing - Chase 
David vs 12 Gohaths - Newborn 
Sixth Chess Championship Summary 
Beating the Game - Thomsen 
Simulated Strategies of Game Playing 

Reisman 
Beyond BASIC - Salisbury 
The Computer Glass Box" 

Teaching with APL - Peelle 
Creative Chess - Koetke 
SNOBOL - Touretzky 
A Smalltalk Airplane Simulation - Horn 
•Artificial and Extraterrestrial Intelligence 
Non-Human Intelligence - Ahl 
An Esoteric Ethical Excursion - Lees 
The Thinking Computer - Raphael 
Primer on Artificial Intelligence - Garrett 
Can Computers Think - Ahl 
An Ear on the Universe - Lees 
Communication Across the Universe 
The Cosmic Subway Line - Asimov 

•Literacy, Philosophy, Opinion 

What is Computer Literacy - Moursund 

Computer Literacy Quiz - Moursund 

A Fable - Spero 

Let Us First Make It - Taylor 

Some Thoughts - Lees 

Information Anyone 9 - Griffith 

The Government Dinosaur - Winn 

The Magic of EFTS - Ahl 



•Computers in Education 

Instructional Computing in Schools - Ahl 
Should the Computer Teach the 

Student, or Vice-versa 9 - Luehrmann 
The Art of Education Blueprint for a 

Renaissance - Dwyer 
Computing at the University of Texas 
Computers in Secondary Schools - 1975 
Compyouter Fair - Thomas 
The Madness known as 

•Every Person and the Computer 

Amateur Computing - Libes 

A Retail Computer Store 9 You Gotta Be 

Kidding - Dunion and Roberts 
irand Opening - Cary 
•^olls. Pols, and Power The Computer on 

the Hustings - Acocella 
An Analytic Examination of 

Creative Computing - Ahl 
How We Spent Our Summer 

Vacation - Lees, et al 
•Art and Poetry 
Toward the Electric Symbol - Mue/fer 
Producing Computer Poetry - Chisman 
Interview with Carole McCauley 
Once Upon a Computer 
Computers and Beauty 

PUZZLES, PROBLEMS. AND PROGRAMS 

•Puzzles and Problems 

Puzzles. Puzzles. Puzzles - Ahl 
Thinkers Corners. Recreations 
Turning A Puzzle Into A Lesson - Homer 

• For The Calculator 

The Keyboard Game - Yarbrough 
7 Pocket Calculator Games - Rogers 
Calculator Tricks 

• Mathematics and Geometry 
The Mystic Seven - Dickens 

Magic Squares on the Computer - Piele 
Non-Usual Mathematics - Reagan 
The World of Series - Reagan 
Change For A Dollar - Hess 
Sequences - Jessen 
Progression Problems - Reeves 



To order, use bound-in card \n back of magazine. 



214 



CREATIVE COMPUTING 



"\ /* 



The Best of 

creative 
computing 

110 \&' Volume 3 




competing 



Volume 3 



OMMHW 




336 pages of articles, activities, fiction, games, 
programs, reviews, cartoons, and other information 
from the 1977 issues of Creative Computing. Includes 
features on technology, public access, educational 
use, medical applications, and computers in music. 
Contains great resource listings and reviews of 
calculators, games, equipment, software and books. 
There are 96 pages of things to do— puzzles, programs, 
problems, and games. 

A sample of the diverse contents is listed. 

Edited by David Ahl and Burchenal Green. Large 
format. 336 pages. $8.95 (12C). 

Partial Listing of Contents - 



• Technology— Present and Future 
Trends Into the Future— Gray 

EFTS: Living is Better Electronically, or IS it?— Dragunas 
The World In Your Own Notebook— Lees 
Eeny, Meeny, Micro and More— Salisbury 
The Pocket Computer Is Almost Here— Ahern 
Microprocessors— A Primer— Cohen 

•Public Access 

Computing at a Public Library— Shair 
Computer Power to the People— Ahl 
A Dream For Irving Snerd— Nelson 
Time For a National Computer Club— Kuzmack 
The Microcomputer Inflicts "Future Shock" 
on Technical Education— Vuillequiz 

I •Computer* In Education 
Interactive Computing in Secondary Schools in France- 
A Microcomputer Software Course— Williams 
Computer Science at Carnegie-Mellon University— Hast 
Final Exams— Eisenberg 
Computational Unsolvability— Steen 
State-of-the-Art vs Compatibility— Ahl 

• Languages and Programming Theory 

Something Is Missing— Finseth 
File Structures— Lees 
PILOT— Yob 
A Taste of APL— Finseth 
ARTSPEAK— Friedman 

•Computers In Medicine and Science 

A New Generation of Biomedical Instruments— Brus 
The Miraculous Medical Microprocessor— Weintraub 
Computerized Robots— Armstrong 
Computer Correction of Optical Illusions— Smith 
Brown Scientists Peer Into Fourth Dimension— Norris 
An Inexpensive Reading Machilne for the Blind— Brus 
Medical Computerized Data Bases— Hastings 
The Placebo and the Computer— Hastings 



•Fiction and Foolishness 

The Land of Halco— Rowlett 

Them Hobbyists— Dunion 

Computer Control— Vitale 

Yellow Computer— Ragen 

Edu-Man Meets Pseudo Hero— Ahl 

Edu-Man Meets the Rumor Mongers— Ahl 

The Lighter Side of Robots 

The Lighter Side of Computer Dating 

Nords— Sunstone Graphics 

G I or obot s — Max son 

The Floating Point Solution— Taylor 

Martsport— Sonntag 

Out of the Mouths of Babes— Wirth 

Still a Few Bugs in the System 

• Games 

Othello— Wright 
SWARMS— Miller 
EUCHRE— Raybaud 
Daytona 500— Churchill 

• Reviews 

Of Calculators 

Sophisticated Electronic Pocket 

Calculators 

Of Games 

Smart Electronic Games— Ahl 
Comp IV— Gray 

Of Software 

Software Technology Music System— Ahl 
A Comparison of Software Systems— Ahl 
Review of Five Small Interpreters— North 
Notes on Languages— Chase 
A Dynamic Debugging System— North 
An Evaluation of Three 8080 8K Basics 
New Benchmark Program— Chase 
Two Space Games with Graphics 




Engineers, programmers, managers, hobbyists, and 
other professionals need to write well. They have to be 
able to inform, persuade, and motivate their readers. 
Clear and concise writing is a necessary skill. 

One Hundred Bugs helps computer people to write 
more effectively. It shows how to turn dull, difficult, 
awkward writing into lively, clear, clean writing. 

After years of consulting with engineers, pro- 
grammers, managers, and other technical pro- 
fessionals, Edmond H. Weiss reached two conclu- 
sions: 

• Most writers make only a handful of errors, and 

• Once the errors are pointed out, most writers can 
avoid them with ease. 

One Hundred Bugs contains the errors Edmond 
Weiss has seen most often. As he puts it, "If your 
writing is free from these 100 kinds of mistakes, you're 
probably the clearest writer in your organization." 

One Hundred Bugs is a "hands-on" book. Each of 
the 100 mistakes is contained in a problem sentence or 
passage. If the reader can spot the error and correct it, 
he can skip the material that refers to that particular 
"bug." If the reader can't figure out what's wrong, he 
reads the appropriate part of the book— and tests 
himself to be sure he's got it. 

All the puzzles and examples in One Hundred Bugs 
are taken from real reports, proposals, and manuals. 

The topics are: Words, In General... Verbs, In 
Particular. . . Phrases. . .Sentences. . .Links. . .Grammar. . . 
Punctuation and Mechanics. .."Style." 




Dr. Edmond H. Weiss, President of Crown Point 
Communications, has conducted scores of communi- 
cation seminars for thousands of technical profes- 
sionals in four countries. Formerly Associate Dean of 
the Annenberg School of Communications of the 
University of Pennsylvania, Weiss is currently a 
member of the Society for Technical Communication 
and a frequent contributor to many journals— including 
Creative Computing Magazine. 

Among the many firms that have sponsored his 
seminars are: Mathematics, Sorbus Corporation, RCA, 
United Technologies, Westinghouse Nuclear Fuel, 
Miles Laboratories, Smith Kline, Goodyear Aerospace, 
International Paper and many more. 

Let One Hundred Bugs help you debug your writing. 

Available 1981. 



NOVEMBER 1980 



215 



To order, use bound-in card in back of magazine. 









Tales of the Marvelous Machine 

05 Stories of Computing 



A robot friend. A computer God. Artificial intelligence challenging human intelligence in a life 
and death struggle. A detective solving a computer murder. Computers tricking people or 
people tricking people with computers. A computer with a soul. Or power. A lonely computer 
Or one in love with its operator. 

In thirty-five wonderful stories about computers, authors such as Frederick Pohl, Charles 
Mosmann, M.V. Mathews, Carol Coil, and George Chesbro depict a life in which computers affect 
the way people live, think, ond relate to each other. Interested in what the effect of computer 
saturation might be? Only fiction can so wonderously dramatize future life. 

The book is fun, and will provide wonderful hours of entertainment. For the reader interested 
in a structured approach to understanding the potential roles of the computer, or wantina auickly 
to locate stories that support or challenge his viewpoint, a multiple table of contents is 
provided. This lists the stories in fourteen different categories. 

For example, a list of stories in which the computer takes on the attributes of a human 
separates them from those in which the computer is only an intelligent machine. The stories are 
categorized by whether they clarify, improve, or worsen the human lot. Stories in which the 
computers have capabilities available today are separated from those in which the capabilities 

C< ^? Sf QVQllQble in ** fc^. There is a listing of the wildly whimsical stories and those in 
which the computer is utilized in o unique fashion. 

Con criminals be caught by computer? Does computer aime pay? Do computers fall in love' 
Are we all part of a larger organic computer? Here are 35 tantalizing tales that will open your 
eyes to a new perspective of computers. 

Skillfully drawn illusttations augment the stories, giving glimpses of scenes os envisioned 
by 20 talented artists. This artwork adds another dimension to the text. 

Tales of the Marvelous Machine: 35 Stories of Computing, edited by Robert Toylor and 
n. ."^qi Green js Q oeQuflftji big fli/ 2 " x 1 1 " softbound anthology of 272 pages. 
It is available for $7.95. (12 D). 

creafci ve computing press 



"o order, use bound-in card in 



^ 



lack of magazine. 



Do 
Computer 

Enthusiasts 

Have 

More 

Fun? 



The Colossal Computer Cartoon Book 

The best collection of computer cartoons ever is now in 
its second printing, and sports a bright new cover. The 
fifteen chapters contain hundreds of cartoons about 
robots, computer dating, computers in the office, home, 
and lab, and much more. 36 cartoonists share their views of 
man's ultimate machine. 

Keep this book with your reference works. When 
needed, the right cartoon can say it all for you. When you 
need a break from debugging a good laugh can give you a 
welcome lift. Recommended for hours of fun and comic 
insight. 

Edited by David Ahl, mastermind behind the April Fool's 
issue of Dr. Kilobyte's Creative Popular Personal Re- 
creational Micro Computer Data Interface World Journal, 
this cartoon book contains much of that same incurable 
zaniness. [Want this issue? It's April 1980 and only $2.50 
postpaid]. 



^ 




i »■■•••••« 



The 

Colossal 

Computer 

Cartoon 
Book 




Edited by David M. AM 




A large SVi x 11" softbound collection of 120 pages, it still sells for only $4.95. (6G). 



Boch 

Baroque 




<^miSm 



hij Ehsrij 



The Philadelphia Computer Music Festival has 
become a traditional favorite at the Philadelphia 
Computer Show. This live recording brings the first of 
those festivals into your home for an encore 
preformance. Eight different computer music systems 
play synthesized interpretations of J.S. Bach, J. 
Pachelbel, Rimsky-Korsakov, Scott Joplin, Neil Dia- 
mond, Lennon & McCartney, and seven others. To add 
a human touch, the record includes duets performed by 
computers and flesh-and-blood musicians. 

The range of music, from baroque to rock, traditional 
to rag, will please anyone's taste. Also included is the 
historic 1963 computerized singing demonstration by 
Bell Labs. 



The 12" LP is one disk that's guaranteed to load 
every time, and guaranteed to bring pleasure. It 
provides the perfect background for programming, 
partying, or relaxing. $6.00 (CR101). 



■\ 




NOVEMBER 1980 



217 



To order, use bound-in card in back of magazine. 



Programming 
a computer is 





Hey Kids, are the folks out of the room? Good, 
'cause I've got a secret to tell you. You know that 
computer they fuss over? Well, kid, between you and 
me, this whole programming thing is a lot simpler 
than they realize. 

What's that? Sure, you can learn. Just get a copy 
of COMPUTERS FOR KIDS. It's a super book, and 
it tells you everything you need to know. Huh? You 
have an Apple? No problem. There's a version just 
for the Apple. One for the TRS-80 and one for the 
Atari too, with complete instructions for operating 
and programming. 

The book will take you through everything 
programmers learn. Its easy to understand and the 
large type makes it easy to read. You'll find out how 
to put together a flowchart, and how to get your 
computer to do what you want it to do. There's a lot 
to learn, but COMPUTERS FOR KIDS has 12 
chapters full of information. You'll even learn how to 
write your own games and draw pictures that move. 

Just so the folks and your teachers won't feel left 
out, there's a special section for them. It gives 



detailed lesson ideas and tells them how to fix a lot . 
the small problems that might pop up. Hey, thij 
book is just right for you. But you don't have to tak 
my word on that. Just listen to what these tof 
educators have to say about it: 

Donald T. Piele, Professor of Mathematics at thj 
University of Wisconsin- Parkside says,"COMPUT 
ERS FOR KIDS is the best material available foj 
introducing students to their new computer. It is 
perfect tool for teachers who are learning abou( 
computers and programming with their students! 
Highly recommended . ' ' 

Robert Taylor, Director of the Program 
Computing and Education at Teachers College 
Columbia University states, "it's a good idea to hav< 
a book for children . ' ' 

Not bad, huh? Okay, you can let the adults back _ 
the room. Don't forget to tell them COMPUTER! 
FOR KIDS by Sally Greenwod Larsen costs onl], 
$3.95. And tell them you might share it with them, ii 
they're good. TRS-80 (12H); Apple (12G); Ati 
(12J). 



creative computing press 



To order, use bound-in card in back of magazine. 



218 



CREATIVE COMPUTING 




new friends 



your child 

Katie and the Computer 




Fred D'lgnazio and Stan Gilliam have 
created a delightful picture book adven- 
ture that explains how a computer works 
to a child. Katie "falls" into the imaginary 
land of Cybernia inside her Daddy's home 
computer. Her journey parallels the path 
of a simple command through the stages 
of processing in a computer, thus 
explaining the fundamentals of computer 
operation to 4 to 10 year olds. Supple- 
mental explanatory information on com- 
puters, bytes, hardware and software is 
contained in the front and back end 
papers. 




Thrill with your chidren as they join the 
Flower Bytes on a bobsled race to the 
CPU. Share Katie's excitement as she 
encounters the multi-legged and mean 
Bug who lassoes her plane and spins her 
into a terrifying loop. Laugh at the 
madcap race she takes with the Flower 
Painters by bus to the CRT. 

"Towards a higher goal, the book 
teaches the rewards of absorbing the 
carefully-written word and anticipating 
the next page with enthusiasm..." 

The Leader 

"Children might not suspect at first 
there's a method to all this madness— a 
lesson about how computers work. It 
does its job well." 

The Charlotte Observer 

"...the book is both entertaining and 
educational." 

Infosystems 



The book has received wide acclaim 
and rave reviews. A few comments are: 

"Lively cartoon characters guide read- 
ers through the inner chamber of the 
computer." 

School Library Journal 

"...an imaginative and beautifully con- 
ceived children's story that introduces 
two characters— the Colonel and the 
Bug— who already seem to have been 
classic children's story book characters 
for generations." 

The Chapel Hill Newspaper 

Written by Fred D'lgnazio and illustrat- 
ed in full color by Stan Gilliam. 42 pages, 
casebound, $6.95. (12A) 

A t-shirt with the Program Bug is 
available in a deep purple design on a 
beige shirt. Adult size S, M, L, XL. 
Children's size S, M, L. $5.00. 




Be a Computer Literate 



Used as a text in many schools, 
lis informative, full color book is 
ideal first introduction to the 
>rld of computers for children 
led 10 to 16. The book is divided 
to eight chapters: 

1 Introduction 

2 What are computers 

3 Kinds of computers 



4 What goes on inside computers 

5 Communicating with the compu- 
ter 

6 Language of the computer 

7 How to write a simple program 

8 How computers work for us. 

The full color drawings, dia- 
grams and photos found on every 
page of these chapters, coupled 
with the large type, make the book 
easy to read and understand. 

The book contains brief explana- 
tions of how computers are used in 
over sixteen different fields, from 
medicine to law enforcement, art to 
business, transportation to educa- 
tion. 

The simple glossary provided 
will help familiarize beginners with 
essential computer terminology. 

Written by Marion J. Ball and 
Sylvia Charp. Large format, paper- 
bound, 66 pages, $3.95 (6H) 



To illustrate how we think through a problem— Suppose you and 
vour friend want to go into business rutting lawns, and you would 
like to cut B law ns a day. You might think through the following 
problem steps (algorithm I: 



{ 



(t 



■M 



S I All I 









**,. 



Km* 

(■W.US4- |*-|| 




NOVEMBER 1980 



219 



To order, use bound-in card in back of magazine. 



r 



K 



Computer 




Coin Games 

CIMPUTER 
CiJW EBWES 



WE' 



^^^^J^c^^ 



SSJVwUAR* AND 



T<i 



JOEWElSBEgKBI 



\r 



CREATIVEC 



Learning how computer circuitry works can actually 
be fun. All you have to do is slide around a few 
pennies. Computer Coin Games presents a series of 
interesting games with full size playing boards that 
trace the paths of electronic signals through various 
simple computer circuits. 

Beginning with the "basic penny switch flip flop" the 
games build in difficulty until the reader is creating 
intricate networks. Why binary math is used in 
computers and how it works, how the computer 
counts, adds, subtracts, uses a number base, and 
handles letters and words, are all explained in the 
book. 

Play "Tic Tac Toe," "Guess a Word," "Create a 
Pattern" and "Escape the Network." This book is an 
ideal introduction to the complicated concepts of 
computer circuitry. 

Games Magazine said "Whether or not you have any 
experience with computer technology you'll be both 
amazed and delighted by the simplicity of the format 
and the complexity of the play. All you need is some 
common cents." 

Dr. Dobb's Journal says "Computer Coin Games is a 

simple approach to a complicated concept... Computer 
Coin Games is liberally sprinkled with clever illustra- 
tions and diagrams, and provides a relatively painless 
route to an understanding of how computer circuits 
function." 

The Association For Educational Data Systems 

reports, "An ideal introduction to the complicated 
concepts of computer circuitry, Computer Coin Games 
features outstanding illustrations by Sunstone Gra- 
phics." 

Written by Joe Weisbecker and enhanced with great 
cartoons by Sunstone Graphics. 96 pages, paper- 
bound,$3.95. (10R) y 



To order, use bound-in card in back of magazine. 



220 






mm 



5T £ p Hi 



ptfito 



*°QOlfr; 



icr 






Si§ 



tf 



c« 



••u* 



•Co, 



nput 



Problems for 
Computer Solution 

Ninety intriguing and fascinating problems, each 
thoroughly discussed and referenced, make an 
excellent source of exercises in research and 
preliminary investigation. Eleven types of problems are 
provided in the following areas: arithmetic, algebra, 
geometry, trigonometry, number theory, probability, 
statistics, calculus and science. Three classic un- 
solved problems and seven appendices are also 
included. 

Problems for you and your computer include: The 
Faulty Speedometer Spotter, The Famous Indian 
Problem, The Monkey and The Banana, Pascal's 
Triangle, Perpetual Calender, Coin Flipper Simulation, 
Einstein's Energy Equation, Touch Tone Music by 
Computer and Computer Verse Forms 

Written by Stephen J. Rogowski. Large format 
paperbound, 106 pages, $4.95. (9Z) 

Problems for Computer Solution: Teacher's Edition, 
contains solutions to these problems each with a 
complete listing in Basic, sample run, and in-depth 
analysis explaining the algorithms and theory involved. 

Written by Stephen J. Rogowski. Large format 
paperbound, 280 pages, $9.95 (9Y) 




CREATIVE COMPUTING 









> r 



The Impact 

of Computers 

on Society 

and Ethics: 

A Bibliography 



The impact oi Computers 

on Society and Ethics : 

A Bibliography 



,.ity M Alisliin 




Where is the computer leading us? Is it a menace or 
a messiah? What are its benefits? What are the risks? 
What is needed to manage the computer for society's 
greatest good? Will we become masters or slaves of 
the evolving computer technology? 

This bibliography was created to help answer 
questions like these. The works cited can provide the 
range of facts and opinion necessary to your 
understanding of the role of the computer. 

This is a bibliography of works dealing with the ways 
in which computers are being used in our society, the 
beneficial changes that are taking place in our lives as 
a result of computer technology, the social and ethical 
problems intensified by the improper use of com- 
puters, the dangers of computerized society, the 
safeguards and defenses against those dangers, the 
attempts to indicate what computerized direction the 
future will take, and the responsibilities of computer 
professionals. It contains 1920 alphabetical entries of 
books, magazine articles, news items, scholarly 
papers and other works dealing with the impact of 
computers on society and ethics. Covers 1948 through 

1979. 
Compiled by Gary M. Abshire. Hardbound, 128 

pages. $17.95. (12E). 



V 




Computers 

Hi Matnernatics: 
A sourcebook of Ideas 

Edited by David H. Ahl 




Creative Computing Press 



Computers in 
Mathematics: 
A Sourcebook 

of Ideas 



Here is a huge sourcebook of ideas for using 
computers in mathematics instruction. There are 
sections on: 

•Thinking Strategies and How to Solve Problems 
*How to Buy a Microcomputer System 
*Art, Graphics, and Mathematics 
•Computer Assisted Instruction 
•Computer Simulations 
•Programming Style 
•Probability 
•Magic Squares and much more. 

One section presents over 250 problems, puzzles 
and programming ideas, more than are found in most 
"problem collection" books. 

Pragmatic, ready to use, classroom tested ideas 
are presented for everything from the most basic 
introduction to binary numbers to advanced tech- 
niques like multiple regression analysis and differen- 
tial equations. Every item discussed has a complete 
explanation including flowcharts, programs, and 
sample runs. 

The book includes many activities that don't 
require a computer. And if you're considering 
expanding your computer facilities you'll find a 
section on how to select a computer complete with 
an invaluable microcomputer comparison chart. 

Although much of the material has appeared in 
Creative Computing, many of those back issues are 
no longer available. Consequently this book meets 
the demand of making available that popular informa- 
tion. 

Edited by David Ahl. Large format paperbound, 
224 pages, $15.95. (12D) 



NOVEMBER 1980 



221 



creative coiwpafcireg press 

To order, use bound-in card in back of magazine. 



The Best of 



Table of Contents 




This blockbuster of a book contains the 
majority of material from the first 12 issues 
of Byte magazine. It is crammed full of 
how-to articles on everything from TV 
displays to joysticks to cassette interfaces 
and computer kits. Also full of software and 
applications from on-line debuggers to 
games to a complete small business 
accounting system. Much more. All of these 
Byte issues are now out of print so this is the 
only source of this vital material. 

Edited by David Ahl and Carl Helmers. 
Large format paperbound, 386 paqes 
$11.95(6F). ' 



OPINION 

The Shadow. Buck Rogers, and the Home Computer 

Gardner 
The State of the Art — Helmers 
Could a Computer Take Over — Rush 

THEORY AND TECHNOLOGY 

A Systems Approach to a Personal 

Microprocessor — Suding 
Frankenstein Emulation — Murray 
Programming for the Beginner — Herman 
What is a Character — Peshka 
Friends. Humans, and Countryrobots 

Lend me your Ears — Rice 
Magnetic Recording for Computers — Manly 

COMPUTER KITS 

Assembling an Altair 8800 — Zarrella 

Build a 6800 System With This Kit — Kay 

More on the SWTPC 6800 System — Kay 

The New Altair 680 — Vice 

A Date With KIM — Simpson 

True Confessions How I Relate to KIM — Gupta 

Zilog 280 — Hashizume 

The Digital Equipment LSI-11 — Baker 

Cromemco TV Dazzler 

HARDWARE 

Flip Flops Exposed — Browning 
Recycling Used ICs — Mikkelsen 
Powerless IC Test Clip — Ernco and Baker 
Parallel Output Interfaces in Memory 

Address Space — Helmers 
Son of Motorola — Fylstra 
Data Paths — Liming 
Build a TTl Pulse Catcher — Walde 
Dressing Up Front Panels — Walters 
Deciphering Mystery Keyboards — Helmers 
A Quick Test of Keyboards — Walters 
Keyboard Modification — Macomber 
Serialize Those Bits From Your 

Mystery Keyboard — Halber 
Build a Television Display — Gantt 
The Ignorance Is Bliss Television Drive 

Circuit — Barbier 
Build a TV Readout Device for Your 

Microprocessor — Suding 



Let There Be Light Pens — Loomis 
Build an Oscilloscope Graphics Interface — Hogenson 
An Introduction to Addressing Methods — Zarrella 
Interface an ASCII Keyboard to a 60mA 

TTY Loop — Cotton 
Interfacing the 60 mA Current Loop — King 
The Complete Tape Cassette Interface — Hemenway 
Digital Data on Cassette Recorders — Mauch 
Build a Fast Cassette Interface — Suding 
Technology Update 

What's In a Video Display Terminal'' — Walters 
Pot Position Digitizing Idea — Schulem 
Read Only Memories in Microcomputer Memory 

Address Space — Eichbauer 
More Information on PROMs — Smith 
Getting Input from Joysticks and Slide Pots - Helmers 
Logic Probes — Hardware Bug Chasers — Burr 
Controlling External Devices With Hobbyist 

Computers — Bosen 
Microprocessor Based Analog/Digital Conversion — 

Frank 
Add a Kluge Harp to Your Computer — Helmers 
The Time Has Come to Talk — Atmar 
Make Your Own Printed Circuits — Hogenson 

SOFTWARE 

Write Your Own Assembler — Fylstra 

Simplify Your Homemade Assembler — Jewell 

Interact With an ELM — Gable 

Design an On Line Debugger — Wier and Brown 

Processing Algebraic Expressions — Maurer 

The "My Dear Aunt Sally Algorithm" — Grappel 

Can YOUR Computer Tell Time 7 — Hogenson 

A Plot Is Incomplete Without Characters — Lerseth 

Hexpawn A Beginning Project in Artificial 

Intelligence — Wier 
Shooting Stars — Nico 
Biorythm for Computers — Fox 
Life Line — Helmers 

APPLICATIONS 

Total Kitchen Information System — Lau 

A Small Business Accounting System — Lehman 

Chips Found Floating Down Silicon Slough — Trumbull 



Books of Interest 
Magazines 



RESOURCES 




Word Processing Systems discusses mini- and Hero- 
based systems- how they work and what they do. It also 
includes an In-depth desc ription of five representative 
systems including examples of how they work, sample 
output and information about availability and prices. 
Recommended by Free Enterprise and the Journal of 
Systems Managements. 

Sorting and Shuffling has an in-depth discussion of five 
sorting techniques (bubble, heapsort, Shell-Metzner, de- 
layed replacement, and Woodrum). Also discusses file 
structures and shuffling techniques. This booklet is a vital 
necessity if you're doing any programming of your own. 
Most textbooks either ignore or gloss over these tech- 
niques. 

Twenty page reprints of two of Creative 
Computing's most popular subjects. Each compilation 
of articles presents an in-depth treatment of its 
subject. $.50 each. 







COftPUTMS *S 6*MMtni*M.roNfStH6 imsBf or 
omwMkMMfr Mcrwmc compuirry. so Mftrr n*d 

W*VRWmiNt TH*T NOOMtt. fcuc CMCT W*H MM TO 

contmwo tmm cottpvxm* cam only m ummswu* pv 
art* mrtf-ntcooo. iwu/ tuft mnotc 6MU9K. 
(m>mooo*f> Twyy wYtvmg memm T\w m 9vm\) 



Set of 8 computer Myths Explained by Monte Wolverton 
On heavy stock, large 12x17" size, suitable for framing, 
^dressing up that drab line printer or file cabinet. $3.00 



To order, use bound-in card in back of magazine. 



222 



CREATIVE COMPUTING 



creative 
computing 




. 




eative Computing- Albert Einstein in 
ack on a red denim-look shirt with red 
ckband and cuffs. 




Creative's own outrageous Bionic Toad 
in dark blue on a light blue shirt for 
kids and adults. 



Plotter display of PI to 625 Places in 

dark brown on a tan shirt. 




ive 




our 






est. 



'd rather be playing spacewar-- black 
vith white spaceships and lettering. 



T-shirts available in adult sizes S, M, L, XL; and in children's 
sizes (Bionic Toad, Spacewar and Program Bug) S, M. L. 
Made in USA. $5.00 




Computer Bum-- black design by car- 
toonist Monte Wolverton on gray 
denim-look shirt with black neckband 
and cuffs. 



The Program Bug that terrorized Cyber- 
nia in Katie and the Computer is back 
on this beige t-shirt with purple design. 
You can share the little monster with 
your favorite kid. 



Roll down the block with this little 
black Robot Rabbit (on a bright orange 
t-shirt) on your back and you can 
intimidate every carrot, radish or cuke 
in your way. 



NOVEMBER 1980 



223 



To order, use bound-in card in back of magazine. 



Reader 
Service 



102 
101 
108 

104 
105 
103 
106 
109 
116 
107 
110 
111 
117 
112 
114 

115 

* 

119 

123 

131 

118 

121 

113 

133 

159 

250 

126 

127 

124 

134 

148 

145 

147 

149 

128 

129 

150 

160 

125 

132 

137 

138 

161 



*3®(3tez£ ft© SM^pftls 

Reader Reader 

Advertiser Page Service Advertiser Page Service 



162 
171 

141 

• 

130 
120 
122 
173 
182 
164 
136 
153 
181 



Aadvark Technical Service 163 

Acorn Software Products 69 

Adventure International 188 

Alpha Byte Storage 68 

American Square 196 

Apple Computer 39 

Applejack 188 

ASAP 12 5 

ASCII 137 

Atari Personal Computers 7 

Automated Simulations 15 

Barton Enterprises 128 

Barclay Bridge 128 

Basics & Beyond 159 

Beagle Bros. 159 

Berliner Computer Center 196 

Beta Computer Devices 207 

C & S Electronics 125 
California Computer Systems 32-33 

CAP Electronics 159 

Cavri Systems inc. 157 

Joseph J. Charles 196 

CLOAD Magazine 181 

Color Software 125 

CJM inc. 175 

Compusoft 103 
Computer Corner of White Plains 196 

Computer Design Lab 89 
Computer Information Exchange 121 

Computer Pathways Unlimited 41 

Computer Programs Unlimited 187 

Computers R" Us 103 

Computer Research Technology 161 

Computer Room 21 

Computer Shopper 11 

Computer Specialities 121 

Computer Systems Design 105 

Computer Systems International 139 

Computerware 161 

Computers Wholesale 127 
Computronics 130-131 

Computronics 63 

Cottage Software 139 

Connecticut Microcomputer 105 

^ m 167,121,137,165 

The Comsoft Group 55 

Corvus System Cover 3 



CPU Shop 

Creative Software 

Cromemco 

Dakin5 Corp 

Dakin5 Corp 

Discount Data Forms 

Discount Software Group 

Dresden Associates 

Dynacomp 

Eaton Corporation 

Ecosoft 



70 

105 

1 

61 
175 
196 
197 
200 

83 
137 
107 






Advertiser 

192 Educational Programs 

176 Edu-ware 

189 80 US Journal 

196 Electronics Book Club 
142 Electronic Specialists 

139 Emtrol Systems 
195 Esmark 

140 Frederick Computer Products 
Galaxy 

135 H & H Trading 

197 Hard Hat Software 
199 Hayden Book Co. 
146 Heath Co. 
201 Bill Hindorff 
144 Huntington Computing 

205 Insiders Software Consultants 

207 Integral Data Systems 

208 Interpretive Education 

209 Iridis 

211 Kelly inc. 

213 Kenyon Microsystems 

215 Krell Software 
Lifeboat Associates 

216 Lifeboat Associates 

217 Lifeboat Associates 
204 Lobo Drives 

206 Maine Software Library 

218 Magazine Co-op 

219 Math Software 

154 Micro Ap 

155 Micro Architect 

220 The Microcommunicator 

210 Microcomputer Service Corp. 

156 Micro Lab 

221 Micro Lab 
163 Micro Management Systems 

222 Micro Magazine 

151 Microcomputer Technology inc. 

212 MicroLearningware 
158 Microsoft 
168 Microsoft Consumer Products 

165 Micro Systems Software 

157 Mini Micro Mart 
180 Mini Micro Mart 

224 Misosys 

225 Mississippi Micro 

152 Monument Computer Service 
179 Mosaic Electronics 
191 Mountain Computer inc. 

226 Muse Software 

227 Mytee Music 
National Computer Show 

203 Nilonel 

214 NRI Schools 
172 Ohio Scientific 
174 Omni Communications 

166 Orion Software 

167 Osborne/McGraw-Hill 

204 Pacific Exchanges 



Page 

123 
123 
107 

19 
133 
113 
119 
133 
175 
107 

14 

91 

9 

196 

200 

109 

47 
133 
109 
207 
155 
167 
109,36-37 

71 
101 

10 
204 
141 
204 

72 
207 
204 
150 

13 

15 
183 
133 
111 
207 

45 

85 

68 
5 

93 
191 
207 
111 
150 

48 

29,59,173 

207 

95,23 

123 

65 

Cover 4 

190 

205 

97 

126 



Advertiser 



Page 

169 Pacific Exchanges 205 

177 Percom Data Co. Cover 2 

252 Peripherals Plus 178 
255 Personal Computing 32 

170 Personal Software 2 

228 Professional Data Systems 190 
175 Program Store 81 

230 Programma International 42 

178 Quality Software 129 

231 Quality Software 87 
188 Racet Computes 117 

242 Radio Shack 16 

243 Radio Shack 27 

186 Radio Shack Sales Center 181 
Rainbow Computing 181 

232 Real Computing 187 

233 Reliance Plastics 126 
Retail Roster 209 

234 Rochester Data 191 
251 S-100 Microsystems 199 

235 Scholastic Magazine 207 
223 Sebree's Computing 207 

236 Sirius Systems 195 

237 Siro-tech 189 
194 Small Business Applications 34 

183 Software Exchange 31,114,115 
Software Works Inc. 14 

253 Skyles Electric Works 203 

254 Skyles Electric Works 161 

184 Southwestern Data 175 

185 Spectrum Software 147 

229 Steketee Educational Software 181 

187 Sublogic Distribution 201 

238 Sybex 177 
190 Synergistic Software 139 
200 Syntonic Software 185 

239 System Software 117 
202 Tarbell Electronics 117 

240 Taxman 207 

241 THESIS 151 
193 Total Information Service 167 
198 Trans Net Corporation 151 

244 Max Ule 200 

245 Videx 207 

246 Vintage Books 53 

247 Voice Tek 189 

248 WIC Systems 11 

249 John Wiley & Sons 51 



Creative Computing 

300 Air Traffic Controller 193 

300 Atari Software 171 

300 Brain & Strategy Games 143 
350 Creative Computing Press 212-223 

Computer Store of the Month 145 

300 Hail to the Chief 79 

300 Investment Analysis 99 

Subscriptions ^35 

300 Su per Invasion 25 

"Write Advertiser Directly 



iPte* WlDSWSOr^ 







The Time Out Puzzle. 



Change The Word Puzzles: FLOP, FLAP 
FLAT, FIAT, FIST, FISH, DISH, DISK. 

The Over-Polite Guests: To obtain the answer, 
all that is needed is to find the number of 
permutations of seven objects (7x6x5x4x3x 
2x1= 5040). It would take, therefore 5040 days, 
or nearly fourteen years, to exhaust the possible 
positions. 

The "Five and Five" Puzzle: For the sake of 
brevity, we will distinguish the red and black 
counters by the letters r and b respectively. They 
will then stand at the outset as under: 

brbrbrbrbr. . 



Position after 1 st move; 
" 2nd " 
" 3rd " 
" 4th " 
" 5 th " 



b b r r b r 

b b r r 

b b r r r r 

. . r r r r 



r b r b r b r 



b r 
r b b r 
r b b 



b 
b 
b 

b 



r b b b b b 



ST0NEHIM6E 




HsTe*, By/tchr 'JO 



224 



CREATIVE COMPUTING 



Corvus Transforms the Personal Computer 
into a Powerful Business Tool. 

In business, professional offices, and schools through- 
out the world, thousands of Corvus intelligent peripherals 
bring mass storage, increased speed, and multi-user 
capability to a variety of microcomputers. Current applica- 
tions include accounts receivable and payable, medical 
records, mailing lists, inventories, word processing, insur- 
ance, mathematics and science, and other large and 

complex files. 

Corvus proven Winchester disk technology provides 
10 to 80 million bytes of capacity, fully compatible with 
your current operating system. This is up to 500 times the 
capacity of a floppy disk. 

The Corvus CONSTELLATION links up to 64 com- 
puters in a state-of-the-art multi-processor network. It 
provides shared mass storage, pipes for inter-computer 
communication, and system spooling for sharing of 
peripherals such as printers. Performance far exceeds 
that of larger and more expensive networks. 

Backup data protection and archival storage are pro- 
vided by the Corvus MIRROR (Patent Pending), a low- 
cost backup using standard video cassette recorders. 

Contact your local Corvus dealer for the full story 
about these innovative new products. . 

CORVUS SYSTEMS 

* 2029 O Toole Avenue 
* • San Jose, California 95131 

(408) 946-7700/TWX 910-338-0226 








x 







Your Challenger 
Personal Computer. 

Through the miracle of modern 
technology, a complete computer as 
powerful as the multimillion dollar 
room-sized computers of a few years 
ago can be put in a package the size of 
a typewriter and sells for as little as a 
color television set! 

Through its years of microcomputer 
experience, Ohio Scientific has effec- 
tively channeled this tremendous 
computer power into a "friendly" 
computer with hundreds of personal 
uses, via a huge software library 
of programs for a broad range of 
personal, home, educational and 
business use. 

This available software allows you to 
use and enjoy your computer without 
becoming an expert. The Challenger, 
however, is a powerful, general 
purpose computer which can be pro- 
grammed in several languages by 
those who choose to. 

Here are just a few of the popular uses 

of an Ohio Scientific 

Challenger 

Computer: 

Education 

The personal 
computer is 
the ultimate 



Accountant 



educational aid because it can enter- 
tain while it educates. Software 
available ranges from enhancing your 
children's basic math, reading and 
spelling ability, through tutoring high 
school and college subjects, to 
teaching the fundamentals of com- 
puters and computer programming. 

Entertainment 

Many of the Challenger's games 
educate while they entertain, from 
cartoons for preschoolers to games 
which sharpen ma'thematical and 
logical abilities. But, entertainment 
doesn't stop here. The Challenger's 
graphics capabilities and fast opera- 
tion allow it to display action games 
with much more detail than the best 
video games, providing spectacular 
action in games such as Invaders, 
Space Wars, Tiger Tank and more ! All 
popular sports such as golf, baseball 
and bowling are available as simulated 
computer games as well as many 
conventional games such as chess 
where the computer plays the role of a 

formidable opponent. 





\ 



Accounting 

Your Challenger computer can keep 
track of your checkbook, savings 
account, loans, expenses, monitor your 
calorie intake and your biorythms. 

If you are involved in a business, you 
can use it to do word processing; ac- 
counting, inventory control, order pro- 
cessing, customer lists, client records, 
mailing labels and planning. 

And more: 

This may seem like a lot of uses , but it's 
only the tip of the iceberg for a general 
purpose computer. For example, your 
Challenger can be expanded to control 
lights and appliances, manage your 
energy usage and monitor for fire and 
break-ins. Furthermore, it can commu- 
nicate with you, with other computers 
and the new personal computer infor- 
mation services over the telephone. 

In fact, the uses of general purpose, 
personalized computers are expand- 
ing daily as more and more people 
discover the tremendous capabilities 

of these new 
technological 
wonders. 

Ohio Scientific 
offers you four 
personalized 
computer sys- 
tems starting 
at just $479. 








For a free 
catalog and 
the name of the 
dealer nearest you, call 
1-800-321-6850 toll free. 



CIRCLE 172 ON READER SERVICE CAR 



& i 



i 



i 



i 



! 



TTTT 



1333 SOUTH CHILLICOUU ROAD 
Al II \i IRA, OH 44202 • (21 6] H: U 13600